Files
haikuports/dev-lang/r/r-4.2.2.recipe
2023-01-08 17:54:14 +01:00

160 lines
4.7 KiB
Bash

SUMMARY="A programming language primarily for statistics and numerical analysis"
DESCRIPTION="R is GNU S, 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. The R distribution contains functionality for a large number of \
statistical procedures such as: linear and generalized linear models, \
nonlinear regression models, time series analysis, classical parametric and \
nonparametric tests, clustering, smoothing and graphical data \
representations. Additional modules ('add-on packages') are available for a \
variety of specific purposes but are not distributed with this package."
HOMEPAGE="https://www.r-project.org/"
COPYRIGHT="2022 The R Foundation for Statistical Computing"
LICENSE="GNU GPL v2"
REVISION="3"
SOURCE_URI="https://cloud.r-project.org/src/base/R-4/R-$portVersion.tar.gz"
CHECKSUM_SHA256="0ff62b42ec51afa5713caee7c4fde7a0c45940ba39bef8c5c9487fef0c953df5"
SOURCE_DIR="R-$portVersion"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="!x86_gcc2 x86"
commandBinDir=$binDir
commandSuffix=$secondaryArchSuffix
if [ "$targetArchitecture" = x86_gcc2 ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
PROVIDES="
r$secondaryArchSuffix = $portVersion
cmd:r$commandSuffix
cmd:rscript$commandSuffix
lib:libRmath$secondaryArchSuffix
devel:libRmath$secondaryArchSuffix
"
REQUIRES="
haiku$secondaryArchSuffix
cmd:less
lib:libbz2$secondaryArchSuffix
# lib:libcairo$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libcurl$secondaryArchSuffix
lib:libgettextpo$secondaryArchSuffix
lib:libgfortran$secondaryArchSuffix
lib:libgomp$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libicui18n$secondaryArchSuffix >= 66
lib:libintl$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
lib:liblapack$secondaryArchSuffix
lib:liblzma$secondaryArchSuffix
lib:libncursesw$secondaryArchSuffix
lib:libopenblas$secondaryArchSuffix
# lib:libpango_1.0$secondaryArchSuffix
lib:libpaper$secondaryArchSuffix
lib:libpcre$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libquadmath$secondaryArchSuffix
lib:libreadline$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
# lib:libtcl8.6
lib:libtiff$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libbz2$secondaryArchSuffix
devel:libcairo$secondaryArchSuffix
devel:libcrypto$secondaryArchSuffix
devel:libcurl$secondaryArchSuffix
devel:libgettextpo$secondaryArchSuffix
devel:libgfortran$secondaryArchSuffix
devel:libgomp$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libicui18n$secondaryArchSuffix >= 66
devel:libintl$secondaryArchSuffix
devel:libjpeg$secondaryArchSuffix
devel:liblapack$secondaryArchSuffix
devel:liblzma$secondaryArchSuffix
devel:libncursesw$secondaryArchSuffix
devel:libnghttp2$secondaryArchSuffix
devel:libopenblas$secondaryArchSuffix
devel:libpango_1.0$secondaryArchSuffix
devel:libpaper$secondaryArchSuffix
devel:libpcre$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libquadmath$secondaryArchSuffix
devel:libreadline$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
# devel:libtclstub8.6
devel:libtiff$secondaryArchSuffix
devel:libX11$secondaryArchSuffix
devel:libXmu$secondaryArchSuffix
devel:libXt$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:awk
cmd:bison
cmd:gcc$secondaryArchSuffix
cmd:gfortran$secondaryArchSuffix
cmd:grep
# cmd:kpsewhich #texlive
cmd:ld$secondaryArchSuffix
cmd:less
cmd:libtoolize$secondaryArchSuffix
cmd:make
# cmd:makeindex #texlive
cmd:pcre2_config$secondaryArchSuffix
# cmd:pdflatex #texlive
# cmd:pdftex #texlive
cmd:pkg_config$secondaryArchSuffix
cmd:pwd
cmd:sed
cmd:texi2any
cmd:which
cmd:yacc
"
BUILD()
{
# From Alpine
# Performance is more important than the size of R. Moreover, -O2 has
# only minimal impact on the R package size (less then 1%)
export CFLAGS="${CFLAGS/-Os/-O2}"
export CPPFLAGS="${CPPFLAGS/-Os/-O2} -D_BSD_SOURCE"
export CXXFLAGS="${CXXFLAGS/-Os/-O2}"
export LIBS="-lnetwork -lbsd"
runConfigure --omit-dirs "sysconfdir binDir" ./configure \
--bindir=$commandBinDir \
--sysconfdir="$sysconfDir/R" \
--enable-R-shlib \
--with-x=no \
rdocdir="$docDir" \
rincludedir=$includeDir \
rsharedir="$dataDir/R"
make $jobArgs
make -C src/nmath/standalone shared $jobArgs
}
INSTALL()
{
make install
make -C src/nmath/standalone shared install
prepareInstalledDevelLib libRmath
fixPkgconfig
}
TEST()
{
make check
}