From <http://cran.R-project.org/doc/FAQ/R-FAQ.html#What-is-R_003f>:
R is a system for statistical computation and graphics. It consists of
a language plus a run-time environment with graphics, a debugger,
access to certain system functions, and the ability to run programs
stored in script files.
The core of R is an interpreted computer language which allows branching
and looping as well as modular programming using functions. Most of the
user-visible functions in R are written in R. It is possible for the user
to interface to procedures written in the C, C++, or FORTRAN languages
for efficiency. The R distribution contains functionality for a large
number of statistical procedures. Among these are: linear and generalized
linear models, nonlinear regression models, time series analysis, classical
parametric and nonparametric tests, clustering and smoothing. There is also
a large set of functions which provide a flexible graphical environment for
creating various kinds of data presentations. Additional modules ("add-on
packages") are available for a variety of specific purposes.
===> The following configuration options are available for R-4.6.1:
ICU=on: Unicode support via ICU
INFO=on: Build and/or install GNU info pages
LDOUBLE=on: Long double data type
LETTER=off: US letter paper
MEMPROF=off: Memory profiling via Rprofmem() and tracemem()
NLS=on: Native Language Support
OPENMP=on: Parallel processing support via OpenMP
RPROF=on: R profiling via Rprof()
X11=on: X11 graphics device
====> Require X11
CAIROPANGO=on: Cairo graphics device and Pango multi-language text
GHOSTSCRIPT=on: Graphics device for bitmap files via Ghostscript
JPEG=on: JPEG graphics device
PNG=on: PNG graphics device
TCLTK=on: Tcl/Tk GUI toolkit support
TEXDOCS=off: Build/Install TeX-dependent documentation files
TIFF=on: TIFF image format support
====> Options available for the single BLAS: you have to select exactly one of them
ATLAS=off: ATLAS BLAS implementation
NETLIB=off: Netlib BLAS implementation
OPENBLAS=off: OpenBLAS BLAS implementation
RBLAS=on: Use R-bundled BLAS implementation
===> Use 'make config' to modify these settings
math/R: Install missing utils DESCRIPTION file
The DESCRIPTION file was mistakenly installed only with the NLS option.
Sponsored by: The FreeBSD Foundation
math/R: fix build on powerpc
ld: error: ../nmath/bessel_y.o:(function Y_bessel: .text+0x822): relocation
R_PPC_GOT16 out of range: 32768 is not in [-32768, 32767]; references .LCPI1_53
>>> referenced by bessel_y.c
>>> defined in ../nmath/bessel_y.o
ld: error: ../nmath/bessel_y.o:(function Y_bessel: .text+0x83a): relocation
R_PPC_GOT16 out of range: 32776 is not in [-32768, 32767]; references .LCPI1_55
>>> referenced by bessel_y.c
>>> defined in ../nmath/bessel_y.o
ld: error: ../nmath/bessel_y.o:(function Y_bessel: .text+0x852): relocation
R_PPC_GOT16 out of range: 32784 is not in [-32768, 32767]; references .LCPI1_57
>>> referenced by bessel_y.c
>>> defined in ../nmath/bessel_y.o
ld: error: ../nmath/bessel_y.o:(function Y_bessel: .text+0x862): relocation
R_PPC_GOT16 out of range: 32792 is not in [-32768, 32767]; references .LCPI1_59
(Only the first 15 lines of the commit message are shown above )
Mk/**tex.mk: Convert bsd.tex.mk to USES=tex
- Update all the consumers to use USES=tex
- USE_TEX=yes is the old way of writing USES=tex which has been removed
and replaced in all ports
- Almost all of the USE_TEX features remains unchanged
- Some consumers had the same variables defined both in the mk
infrastructure and also in the ports which have been removed from the
ports as those are redundant.
In case any of the consumers are failing to build please make sure that
the nexessary USES=tex is there. Unlike previous USE_TEX=yes will no
longer load the required VARS for tex and related dependencies.
Reviewed by: portmgr
Approved by: portmgr (blanket)
math/R: Update to 4.2.2; remove FLANG option
https://hypatia.math.ethz.ch/pipermail/r-announce/2022/000686.html
Remove the FLANG option since lang/flang was removed from the tree on
2022-09-30. In the future, the option can be re-added to use flang that
is part of devel/llvm13+.
Sponsored by: The FreeBSD Foundation
math/R: Update path set in RUN_DEPENDS for CMake
Commit b23ea4e2d2f51b53d8915fe9fd7b4efbdd575e38 changed its location to
devel/cmake-core
Approved by: portmgr (blanket)
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
math/R: Fix build with clang/openmp 13
The mgcv package is one of the recommended packages to be installed with
R. A problem with mgcv and clang/openmp 13 is that mgcv versions prior
to 1.8-37 place 'include <omp.h>' after 'include <R.h>'. This causes a
conflict between '#define match' and an openmp pragma line, which uses
match(). This problem was fixed in mgcv 1.8-37, so replace mgcv 1.8-36
with this newer version.
While here, incorporate formatting changes suggested by portclippy and
portfmt.
PR: 258887
Approved by: dim
Differential Revision: https://reviews.freebsd.org/D32280
math/R;math/libRmath: Update maintainers
I intended to drop maintainership of math/libRmath as I no longer use
it (and suspect there are few users), but accidentally dropped
maintainership of math/R.
math/R: remove obsolete fpsetmask
src/unix/sys-unix.c uses fpsetmask to workaround a bug that is not present since
FreeBSD 4.0.
This issue also affected Firefox and was resolved 9 years ago
https://bugzilla.mozilla.org/show_bug.cgi?id=789436#c27
fpsetmask executions cause R build to crash on powerpc64(le), since new SIGFPE
kernel code doesn't take into account old workarounds.
PR: 254621
Approved by: jrm (maintainer)
Bump 37 ports depending on math/openblas through USES=blaslapack:openblas
because after the recent math/openblas update the library name changed in
openblas
math/R: Fix dependency condition for devel/openmp
libomp is provided by
- LLVM, which gets pulled in with FLANG
- gcc
So, we *must* only depend on devel/openmp when
- the OPENMP knob is on
- FLANG is off (guaranteed to be off for all archs except amd64)
- clang is the C compiler.
But, we cannot modify LIB_DEPENDS after CHOSEN_COMPILER_TYPE is defined, so
for now, limit the OPENMP knob for i386 and amd64 where clang is the
default compiler.
This will be moot after 12.1 when openmp will be in base.
PR: 240279
Reported by: pkubaj
Reviewed by: pkubaj
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
devel/openmp: phase out
- Expire after the last version without /usr/lib/libomp.so
- Drop SOVERSION for seamless transition (i.e., avoid conditionals)
PR: 236907
Approved by: bapt (maintainer)
Differential Revision: https://reviews.freebsd.org/D19767
Related to revision 499061 bump ports with USES=fortran to have them
benefit from the improved situation where libgcc_s is only used when
absolutely necessary.
Suggested by: tijl
math/R: Update to version 3.5.3
'CHANGES IN R 3.5.3' from
https://cran.r-project.org/doc/manuals/r-devel/NEWS.html
- writeLines(readLines(fnam), fnam) now works as expected, thanks to Peter
Meissner's PR#17528
- setClassUnion() no longer warns, but uses message() for now, when
encountering "non local" subclasses of class members
- stopifnot(exprs = T) no longer fails
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Install texinfo files (GNU info) into ${PREFIX}/share/info
After a discussion on the mailing list on moving manpages to
${PREFIX}/share/man for consistency with base where it is
installed in usr/share/man, it appeared the same should happen
to GNU info files which were installed under share in base and
not in ports.
Now texinfo is not in base on any of the supported version of FreeBSD
it is possible to proceed to this move and it is easier to do than
the manpage change.
Other benefit than consistency are less patching: all build tools but
cmake are expecting info files to be under share/info and cmake (patched here)
was having an exception for BSD so the patch makes FreeBSD case less
specific for them
Bump revision of all impacted ports
PR: 232907
exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D17816
Remove compatibility code for FreeBSD < 11.2 from all ports.
Simplify some ports where DragonFlyBSD no longer needs to be special-cased.
Submitted by: rene
Reviewed by: bapt, jbeich
Differential Revision: https://reviews.freebsd.org/D17724
Bump PORTREVISION for ports depending on the canonical version of GCC
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
math/R: Permit building in poudriere with ATLAS
When ATLAS is built locally and then injected into poudriere (or other
similar shenanigans) it does not make sense to block building of R.
Approved by: jrm (maintainer)