# Contributor: Nirosan # Contributor: Jakub Jirutka # Maintainer: Jakub Jirutka setglobal pkgname = 'R' setglobal pkgver = '3.4.2' setglobal pkgrel = '0' setglobal pkgdesc = '"Language and environment for statistical computing'" setglobal url = '"https://www.r-project.org'" setglobal arch = '"all !s390x'" setglobal license = '"GPL-2 GPL-3 LGPL-2.1'" setglobal depends = ""$pkgname-mathlib"" setglobal depends_dev = '"gcc gfortran icu-dev libjpeg-turbo libpng-dev make openblas-dev pcre-dev>=8.10 readline-dev xz-dev zlib-dev bzip2-dev curl-dev>=7.28 '" setglobal makedepends = ""$depends_dev cairo-dev libxmu-dev openjdk8-jre-base pango-dev perl tiff-dev tk-dev "" setglobal install = ""$pkgname.post-install"" setglobal subpackages = ""$pkgname-mathlib $pkgname-dev $pkgname-doc"" setglobal source = ""https://cran.r-project.org/src/base/R-$(pkgver%%.*)/$pkgname-$pkgver.tar.gz"" setglobal builddir = ""$srcdir/$pkgname-$pkgver"" setglobal _rhome = '"usr/lib/R'" setglobal ldpath = ""/$_rhome/lib"" proc build { cd $builddir # CXXFLAGS is propagated to /etc/R/Makeconf that is read when building # additional R modules. -D__MUSL__ is needed for some modules like Rcpp. # htps://github.com/RcppCore/Rcpp/issues/448 env CXXFLAGS="$CXXFLAGS -D__MUSL__" ./configure \ --prefix=/usr \ --sysconfdir=/etc/R \ --localstatedir=/var \ --mandir=/usr/share/man \ --libdir=/usr/lib \ rdocdir=/usr/share/doc/R \ rincludedir=/usr/include/R \ rsharedir=/usr/share/R \ --disable-nls \ --enable-R-shlib \ --enable-java \ --without-recommended-packages \ --with-blas=openblas \ --with-cairo \ --with-ICU \ --with-jpeglib \ --with-lapack \ --with-libpng \ --with-libtiff \ --with-tcltk \ --with-x make make -C src/nmath/standalone } # TODO: Run provided test suite. proc check { cd $builddir ./bin/R --version ./bin/R --slave --vanilla -e 'print("Hello, world!")' } proc package { local destdir="$pkgdir/$_rhome" cd $builddir make DESTDIR="$pkgdir" install # Install libRmath.so. cd src/nmath/standalone make DESTDIR="$pkgdir" install cd - # Fixup R wrapper script (taken from Arch). rm "$destdir"/bin/R ln -sf /usr/bin/R "$destdir"/bin/R # Remove some useless files (COPYING is duplicated, it will be # in -doc, don't worry). rm "$destdir"/COPYING "$destdir"/SVN-REVISION mkdir -p "$pkgdir"/etc/R # R apparently ignores --sysconfdir, so we must manually move configs # to /etc/R and make symlinks. cd "$destdir"/etc local f; for f in [*] { mv $f "$pkgdir"/etc/R/ && ln -sf /etc/R/$f $f } cd - } proc mathlib { setglobal pkgdesc = '"Standalone math library from the R project'" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libRmath.so* "$subpkgdir"/usr/lib } setglobal sha512sums = '"d432b65aad8d8ed41a8470365c4d354b83a0e1228413963420f753aead8b84596c9ca3efc58506c8797e887af9dd6fdaf833ac1ad9339ac1ffb4b5aed577803d R-3.4.2.tar.gz'"