|
Lines 29-44
Link Here
|
| 29 |
LIB_DEPENDS= libcurl.so:ftp/curl \ |
29 |
LIB_DEPENDS= libcurl.so:ftp/curl \ |
| 30 |
libpcre.so:devel/pcre |
30 |
libpcre.so:devel/pcre |
| 31 |
|
31 |
|
|
|
32 |
CONFIGURE_ARGS= --disable-java \ |
| 33 |
--with-readline \ |
| 34 |
rdocdir=${DOCSDIR} |
| 32 |
GNU_CONFIGURE= yes |
35 |
GNU_CONFIGURE= yes |
| 33 |
USES= fortran iconv objc:compiler perl5 |
36 |
INSTALL_TARGET= install-strip |
|
|
37 |
ONLY_FOR_ARCHS= i386 amd64 |
| 38 |
USES= fortran iconv libtool localbase objc:compiler perl5 \ |
| 39 |
readline |
| 34 |
USE_PERL5= build |
40 |
USE_PERL5= build |
| 35 |
USE_LDCONFIG= ${PREFIX}/lib/R/lib |
|
|
| 36 |
CONFIGURE_ARGS= --disable-java --enable-memory-profiling rdocdir=${DOCSDIR} |
| 37 |
INSTALL_TARGET= install-strip |
| 38 |
|
41 |
|
| 39 |
OPTIONS_DEFINE= DOCS ICU INFO LETTER LIBR LDOUBLE LTO MISSING NLS \ |
42 |
OPTIONS_DEFINE= DOCS ICU INFO LDOUBLE LETTER LIBR MEMPROF NLS RPROF X11 |
| 40 |
OPENMP THREADS X11 |
43 |
OPTIONS_GROUP= NEEDGCC NEEDX11 |
| 41 |
OPTIONS_GROUP= NEEDX11 |
44 |
OPTIONS_GROUP_NEEDGCC= LTO OPENMP |
| 42 |
OPTIONS_GROUP_NEEDX11= GHOSTSCRIPT JPEG CAIROPANGO PDF PNG TCLTK TIFF |
45 |
OPTIONS_GROUP_NEEDX11= GHOSTSCRIPT JPEG CAIROPANGO PDF PNG TCLTK TIFF |
| 43 |
OPTIONS_SINGLE= BLAS |
46 |
OPTIONS_SINGLE= BLAS |
| 44 |
OPTIONS_SINGLE_BLAS= ATLAS OPENBLAS NETLIB RBLAS |
47 |
OPTIONS_SINGLE_BLAS= ATLAS OPENBLAS NETLIB RBLAS |
|
Lines 46-127
Link Here
|
| 46 |
OPTIONS_SUB= YES |
49 |
OPTIONS_SUB= YES |
| 47 |
|
50 |
|
| 48 |
ATLAS_DESC= ATLAS BLAS implementation |
51 |
ATLAS_DESC= ATLAS BLAS implementation |
| 49 |
GHOSTSCRIPT_DESC= Graphics Device for Bitmap Files via Ghostscript |
52 |
GHOSTSCRIPT_DESC= Graphics device for bitmap files via Ghostscript |
| 50 |
CAIROPANGO_DESC= Cairo graphics device and Pango multi-language text |
53 |
CAIROPANGO_DESC= Cairo graphics device and Pango multi-language text |
| 51 |
INFO_DESC= GNU info manuals |
54 |
INFO_DESC= GNU info manuals |
| 52 |
JPEG_DESC= JPEG graphics device |
55 |
JPEG_DESC= JPEG graphics device |
| 53 |
LDOUBLE_DESC= Enable long double data type |
56 |
LDOUBLE_DESC= Long double data type |
| 54 |
LETTER_DESC= US Letter paper |
57 |
LETTER_DESC= US letter paper |
| 55 |
LIBR_DESC= Build dynamic (shared) R library |
58 |
LIBR_DESC= Shared R library |
| 56 |
LTO_DESC= Try to produce faster code through LTO |
59 |
LTO_DESC= Use Link Time Optimization |
| 57 |
MISSING_DESC= Use libmissing rather than libquadmath |
60 |
MEMPROF_DESC= Memory profiling via Rprofmem() and tracemem() |
| 58 |
NEEDX11_DESC= X11-Implying Options |
61 |
NEEDGCC_DESC= Require GCC |
|
|
62 |
NEEDX11_DESC= Require X11 |
| 59 |
NETLIB_DESC= Netlib BLAS implementation |
63 |
NETLIB_DESC= Netlib BLAS implementation |
| 60 |
OPENBLAS_DESC= OpenBLAS BLAS implementation |
64 |
OPENBLAS_DESC= OpenBLAS BLAS implementation |
| 61 |
PDF_DESC= PDF manuals (requires TeX) |
65 |
PDF_DESC= PDF manuals (requires TeX) |
| 62 |
PNG_DESC= PNG graphics device |
66 |
PNG_DESC= PNG graphics device |
| 63 |
RBLAS_DESC= Use R-bundled BLAS implementation |
67 |
RBLAS_DESC= Use R-bundled BLAS implementation |
|
|
68 |
RPROF_DESC= R profiling via Rprof() |
| 64 |
X11_DESC= X11 graphics device |
69 |
X11_DESC= X11 graphics device |
| 65 |
|
70 |
|
| 66 |
OPTIONS_DEFAULT= GHOSTSCRIPT ICU INFO JPEG LTO LIBR OPENBLAS OPENMP \ |
71 |
OPTIONS_DEFAULT= CAIROPANGO GHOSTSCRIPT ICU INFO JPEG LDOUBLE LIBR PNG \ |
| 67 |
CAIROPANGO PNG TCLTK TIFF THREADS X11 |
72 |
RBLAS RPROF TCLTK TIFF X11 |
| 68 |
|
73 |
|
| 69 |
OPTIONS_DEFAULT_armv6+= MISSING |
|
|
| 70 |
OPTIONS_DEFAULT_powerpc+= MISSING |
| 71 |
OPTIONS_DEFAULT_powerpc64+= MISSING |
| 72 |
OPTIONS_DEFAULT_sparc64+= MISSING |
| 73 |
|
| 74 |
ATLAS_USES= blaslapack:atlas |
74 |
ATLAS_USES= blaslapack:atlas |
| 75 |
.if defined(BATCH) || defined(PACKAGE_BUILDING) |
75 |
ALTAS_CONFIGURE_ON= --disable-BLAS-shlib |
| 76 |
ATLAS_IGNORE= Choose a BLAS option other than ATLAS for package building. |
76 |
ATLAS_VARS= MANUAL_PACKAGE_BUILD=\ |
| 77 |
.endif |
77 |
"Choose a BLAS option other than ATLAS for package building." |
| 78 |
|
78 |
CAIROPANGO_IMPLIES= X11 |
|
|
79 |
CAIROPANGO_CONFIGURE_WITH=cairo |
| 80 |
CAIROPANGO_USES= gettext jpeg pkgconfig |
| 81 |
CAIROPANGO_USE= gnome=pango,cairo |
| 79 |
DOCS_BUILD_DEPENDS= texi2any:print/texinfo |
82 |
DOCS_BUILD_DEPENDS= texi2any:print/texinfo |
| 80 |
|
|
|
| 81 |
GHOSTSCRIPT_IMPLIES= X11 |
83 |
GHOSTSCRIPT_IMPLIES= X11 |
| 82 |
GHOSTSCRIPT_USES= ghostscript |
84 |
GHOSTSCRIPT_USES= ghostscript |
| 83 |
|
|
|
| 84 |
ICU_CONFIGURE_WITH= ICU |
85 |
ICU_CONFIGURE_WITH= ICU |
| 85 |
ICU_LIB_DEPENDS= libicui18n.so:devel/icu |
86 |
ICU_LIB_DEPENDS= libicui18n.so:devel/icu |
| 86 |
|
|
|
| 87 |
INFO_IMPLIES= DOCS |
87 |
INFO_IMPLIES= DOCS |
| 88 |
INFO_INSTALL_TARGET= install-info |
88 |
INFO_INSTALL_TARGET= install-info |
| 89 |
INFO_INFO= R-FAQ R-admin R-data R-exts R-ints R-intro R-lang |
89 |
INFO_INFO= R-FAQ R-admin R-data R-exts R-ints R-intro R-lang |
| 90 |
|
|
|
| 91 |
JPEG_IMPLIES= X11 |
90 |
JPEG_IMPLIES= X11 |
| 92 |
JPEG_CONFIGURE_WITH= jpeglib |
91 |
JPEG_CONFIGURE_WITH= jpeglib |
| 93 |
|
92 |
JPEG_CONFIGURE_ENV= r_cv_header_jpeglib_h=yes |
|
|
93 |
JPEG_USES= jpeg |
| 94 |
LDOUBLE_CONFIGURE_ENABLE=long-double |
| 94 |
LETTER_CONFIGURE_ENV= R_PAPERSIZE=letter |
95 |
LETTER_CONFIGURE_ENV= R_PAPERSIZE=letter |
| 95 |
|
|
|
| 96 |
LIBR_CONFIGURE_ENABLE= R-shlib |
96 |
LIBR_CONFIGURE_ENABLE= R-shlib |
| 97 |
|
|
|
| 98 |
LDOUBLE_CONFIGURE_ENABLE=long-double |
| 99 |
|
| 100 |
LTO_CONFIGURE_ENABLE= lto |
97 |
LTO_CONFIGURE_ENABLE= lto |
| 101 |
|
98 |
LTO_USE= gcc=yes |
| 102 |
.for i in acos asin atan cos cosh exp log pow sin sinh tan tanh |
99 |
MEMPROF_CONFIGURE_ENABLE=memory-profiling |
| 103 |
MISSING_CONFIGURE_ENV+= ac_cv_have_decl_c${i}=yes |
|
|
| 104 |
.endfor |
| 105 |
MISSING_LIB_DEPENDS= libmissing.so:math/libmissing |
| 106 |
MISSING_VARS= LIBM="-L${LOCALBASE}/lib -lmissing -lm" \ |
| 107 |
LIBMH=<missing_math.h> |
| 108 |
MISSING_VARS_OFF= LIBM='-lquadmath -lm' \ |
| 109 |
LIBMH=<quadmath.h> |
| 110 |
|
| 111 |
NETLIB_USES= blaslapack:netlib |
100 |
NETLIB_USES= blaslapack:netlib |
| 112 |
|
101 |
NETLIB_CONFIGURE_ON= --disable-BLAS-shlib |
| 113 |
NLS_CONFIGURE_OFF= --disable-nls |
102 |
NLS_CONFIGURE_OFF= --disable-nls |
| 114 |
NLS_USES= gettext |
103 |
NLS_USES= gettext |
| 115 |
|
|
|
| 116 |
OPENBLAS_USES= blaslapack:openblas |
104 |
OPENBLAS_USES= blaslapack:openblas |
| 117 |
|
105 |
OPENBLAS_CONFIGURE_ON= --disable-BLAS-shlib |
| 118 |
OPENMP_CONFIGURE_ENABLE=openmp |
106 |
OPENMP_CONFIGURE_ENABLE=openmp |
| 119 |
|
107 |
OPENMP_USE= compiler:openmp |
| 120 |
CAIROPANGO_IMPLIES= X11 |
|
|
| 121 |
CAIROPANGO_CONFIGURE_WITH=cairo |
| 122 |
CAIROPANGO_USES= gettext jpeg pkgconfig |
| 123 |
CAIROPANGO_USE= gnome=pango,cairo |
| 124 |
|
| 125 |
PDF_IMPLIES= DOCS X11 |
108 |
PDF_IMPLIES= DOCS X11 |
| 126 |
PDF_USE= tex=dvipsk:build,kpathsea:build,pdftex:build |
109 |
PDF_USE= tex=dvipsk:build,kpathsea:build,pdftex:build |
| 127 |
PDF_INSTALL_TARGET= install-pdf |
110 |
PDF_INSTALL_TARGET= install-pdf |
|
Lines 128-154
Link Here
|
| 128 |
.for i in KPSEWHICH MAKEINDEX PDFLATEX PDFTEX TEX TEXI2DVI |
111 |
.for i in KPSEWHICH MAKEINDEX PDFLATEX PDFTEX TEX TEXI2DVI |
| 129 |
PDF_CONFIGURE_ENV_OFF+= ac_cv_path_${i}="" |
112 |
PDF_CONFIGURE_ENV_OFF+= ac_cv_path_${i}="" |
| 130 |
.endfor |
113 |
.endfor |
| 131 |
|
|
|
| 132 |
PNG_IMPLIES= X11 |
114 |
PNG_IMPLIES= X11 |
| 133 |
PNG_LIB_DEPENDS= libpng.so:graphics/png |
115 |
PNG_LIB_DEPENDS= libpng.so:graphics/png |
| 134 |
PNG_CONFIGURE_WITH= libpng |
116 |
PNG_CONFIGURE_WITH= libpng |
| 135 |
|
|
|
| 136 |
RBLAS_CONFIGURE_ON= --without-blas \ |
117 |
RBLAS_CONFIGURE_ON= --without-blas \ |
| 137 |
--without-lapack |
118 |
--without-lapack \ |
|
|
119 |
--enable-BLAS-shlib |
| 138 |
RBLAS_CONFIGURE_OFF= --with-blas="-L${LOCALBASE}/lib ${BLASLIB}" \ |
120 |
RBLAS_CONFIGURE_OFF= --with-blas="-L${LOCALBASE}/lib ${BLASLIB}" \ |
| 139 |
--with-lapack="${LAPACKLIB}" |
121 |
--with-lapack="${LAPACKLIB}" |
| 140 |
|
122 |
RPROF_CONFIGURE_ENABLE= R-profiling |
| 141 |
TCLTK_IMPLIES= X11 |
123 |
TCLTK_IMPLIES= X11 |
| 142 |
TCLTK_USES= tcl tk:84+ |
124 |
TCLTK_USES= tcl tk:84+ |
| 143 |
TCLTK_CONFIGURE_WITH= tcltk |
125 |
TCLTK_CONFIGURE_WITH= tcltk |
| 144 |
|
|
|
| 145 |
THREADS_CONFIGURE_ON= --enable-threads=posix |
| 146 |
THREADS_CONFIGURE_OFF= --disable-threads |
| 147 |
|
| 148 |
TIFF_IMPLIES= X11 |
126 |
TIFF_IMPLIES= X11 |
| 149 |
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff |
127 |
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff |
| 150 |
TIFF_CONFIGURE_WITH= libtiff |
128 |
TIFF_CONFIGURE_WITH= libtiff |
| 151 |
|
|
|
| 152 |
X11_CONFIGURE_WITH= x |
129 |
X11_CONFIGURE_WITH= x |
| 153 |
X11_USE= xorg=ice,sm,x11,xext,xmu,xscrnsaver,xt |
130 |
X11_USE= xorg=ice,sm,x11,xext,xmu,xscrnsaver,xt |
| 154 |
|
131 |
|
|
Lines 160-230
Link Here
|
| 160 |
RBLAS_SOVERSION="${RBLAS_SOVERSION}" \ |
137 |
RBLAS_SOVERSION="${RBLAS_SOVERSION}" \ |
| 161 |
RLAPACK_SOVERSION="${RLAPACK_SOVERSION}" |
138 |
RLAPACK_SOVERSION="${RLAPACK_SOVERSION}" |
| 162 |
|
139 |
|
|
|
140 |
.include <bsd.port.options.mk> |
| 163 |
.include "compiler.mk" |
141 |
.include "compiler.mk" |
| 164 |
.include <bsd.port.options.mk> |
|
|
| 165 |
|
142 |
|
| 166 |
.if ${OPSYS} == FreeBSD && ${OSVERSION} > 1000052 && \ |
143 |
# OPT_USE= ldconfig=${PREFIX}/lib/R/lib is broken. |
| 167 |
(${ARCH} == amd64 || ${ARCH} == i386 || ${ARCH} == ia64 || ${ARCH} == pc98 || \ |
144 |
# It adds /lib/R/lib (without PREFIX) to ${PREFIX}/libdata/R. |
| 168 |
${ARCH} == sparc64) |
145 |
.if ${PORT_OPTIONS:MLIBR} || ${PORT_OPTIONS:MRBLAS} |
| 169 |
.for i in coshl erfcl erfl lgammal powl sinhl tanhl tgammal |
146 |
USE_LDCONFIG= ${PREFIX}/lib/R/lib |
| 170 |
CFLAGS+= -fno-builtin-${i} |
|
|
| 171 |
LDFLAGS+= -fno-builtin-${i} |
| 172 |
.endfor |
| 173 |
.endif |
147 |
.endif |
| 174 |
|
148 |
|
| 175 |
post-patch: |
149 |
post-patch: |
| 176 |
.if ${OPSYS} == FreeBSD |
|
|
| 177 |
.if !${PORT_OPTIONS:MMISSING} |
| 178 |
.if ${OSVERSION} < 1000016 |
| 179 |
@${REINPLACE_CMD} -e \ |
| 180 |
's/# define EXP expl/# define EXP(x) (long double)expq((__float128)(x))/' \ |
| 181 |
${WRKSRC}/src/nmath/pnchisq.c \ |
| 182 |
${WRKSRC}/src/nmath/pgamma.c |
| 183 |
@${REINPLACE_CMD} -e \ |
| 184 |
's/# define LOG logl/# define LOG(x) (long double)logq((__float128)(x))/' \ |
| 185 |
${WRKSRC}/src/nmath/pnchisq.c \ |
| 186 |
${WRKSRC}/src/nmath/pgamma.c |
| 187 |
.endif |
| 188 |
.if ${OSVERSION} < 1000034 |
| 189 |
@${REINPLACE_CMD} -Ee 's/(log)(1p)?l\(/(long double)\1\2q((__float128)/'\ |
| 190 |
${WRKSRC}/src/nmath/dnbeta.c \ |
| 191 |
${WRKSRC}/src/nmath/pnbeta.c |
| 192 |
.endif |
| 193 |
@${REINPLACE_CMD} -Ee \ |
| 194 |
's/powl\((.*)(long double)/(long double)powq((__float128)\1__float128/' \ |
| 195 |
${WRKSRC}/src/main/format.c |
| 196 |
.else # !PORT_OPTIONS:MMISSING |
| 197 |
.if ${OSVERSION} > 1000052 && \ |
| 198 |
(${ARCH} == amd64 || ${ARCH} == i386 || ${ARCH} == ia64 || ${ARCH} == pc98 || \ |
| 199 |
${ARCH} == sparc64) |
| 200 |
@${REINPLACE_CMD} -e '\|^FLIBS="$$ac_cv_f77_libs"|s|"|&${LIBM} |' \ |
| 201 |
${WRKSRC}/configure |
| 202 |
.endif |
| 203 |
@${REINPLACE_CMD} -e \ |
| 204 |
'\|#[[:blank:]]*include[[:blank:]]*<complex.h>|{x;s|^.*$$|#include "missing_complex.h"|;H;x;}' \ |
| 205 |
${WRKSRC}/src/main/complex.c |
| 206 |
.endif # !PORT_OPTIONS:MMISSING |
| 207 |
.endif # ${OPSYS} == FreeBSD |
| 208 |
@${REINPLACE_CMD} -e \ |
| 209 |
'\|#[[:blank:]]*include[[:blank:]]*<math.h>|{x;s|^.*$$|#include ${LIBMH}|;H;x;}'\ |
| 210 |
${WRKSRC}/src/nmath/nmath.h \ |
| 211 |
${WRKSRC}/src/include/Rmath.h0.in |
| 212 |
@${REINPLACE_CMD} -e 's|(libdir)/pkgconfig|(prefix)/libdata/pkgconfig|g'\ |
150 |
@${REINPLACE_CMD} -e 's|(libdir)/pkgconfig|(prefix)/libdata/pkgconfig|g'\ |
| 213 |
${WRKSRC}/src/nmath/standalone/Makefile.in \ |
151 |
${WRKSRC}/src/nmath/standalone/Makefile.in \ |
| 214 |
${WRKSRC}/src/unix/Makefile.in |
152 |
${WRKSRC}/src/unix/Makefile.in |
| 215 |
@${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|g" \ |
153 |
@${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|g" \ |
| 216 |
${WRKSRC}/configure \ |
154 |
${WRKSRC}/configure |
| 217 |
${WRKSRC}/src/library/profile/Rprofile.unix \ |
|
|
| 218 |
${WRKSRC}/src/scripts/javareconf.in |
| 219 |
|
155 |
|
| 220 |
.if !${PORT_OPTIONS:MMISSING} |
|
|
| 221 |
pre-configure: |
| 222 |
@if [ ! -f ${_GCC_RUNTIME}/libquadmath.a ] ; then \ |
| 223 |
IGNORE="\n\n\n%s\n\n\n" "libquadmath is not available for your\ |
| 224 |
compiler and architecture: please enable the MISSING option."; \ |
| 225 |
fi |
| 226 |
.endif |
| 227 |
|
| 228 |
post-install: |
156 |
post-install: |
| 229 |
.for L in R Rblas Rlapack |
157 |
.for L in R Rblas Rlapack |
| 230 |
@if [ -d ${STAGEDIR}${PREFIX}/lib/R/lib ] ; then \ |
158 |
@if [ -d ${STAGEDIR}${PREFIX}/lib/R/lib ] ; then \ |