aboutsummaryrefslogtreecommitdiffstats
path: root/community/R/APKBUILD
blob: 352c89264eba578471db92af03dd1fe4bc6bc97b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# Contributor: Nirosan <pnirosan@gmail.com>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=R
pkgver=3.3.2
pkgrel=1
pkgdesc="Language and environment for statistical computing"
url="https://www.r-project.org"
# openjdk8-jre-base is currently built only for x86*
arch="x86_64 x86"
license="GPL-2 GPL-3 LGPL-2.1"
depends="$pkgname-mathlib"
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
	"
makedepends="$depends_dev cairo-dev libxmu-dev openjdk8-jre-base pango-dev
	perl tiff-dev tk-dev
	"
install="$pkgname.post-install"
subpackages="$pkgname-mathlib $pkgname-dev $pkgname-doc"
source="https://cran.r-project.org/src/base/R-${pkgver%%.*}/$pkgname-$pkgver.tar.gz"
builddir="$srcdir/$pkgname-$pkgver"

_rhome="usr/lib/R"
ldpath="/$_rhome/lib"

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
	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 \
		|| return 1

	make || return 1
	make -C src/nmath/standalone
}

package() {
	local destdir="$pkgdir/$_rhome"

	cd "$builddir"

	make DESTDIR="$pkgdir" install || return 1

	# Install libRmath.so.
	cd src/nmath/standalone
	make DESTDIR="$pkgdir" install || return 1
	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 || return 1
	local f; for f in *; do
		mv "$f" "$pkgdir"/etc/R/ && ln -sf /etc/R/$f $f || return 1
	done
	cd -
}

mathlib() {
	pkgdesc="Standalone math library from the R project"

	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libRmath.so* "$subpkgdir"/usr/lib
}

md5sums="2437014ef40641cdc9673e89c040b7a8  R-3.3.2.tar.gz"
sha256sums="d294ad21e9f574fb4828ebb3a94b8cb34f4f304a41687a994be00dd41a4e514c  R-3.3.2.tar.gz"
sha512sums="06a98687c0b180cb0bfd57440ea26088212d9f48948d503136475bf54b42d72cfec5bea7e333c0cedd60733bd614dd0f8c2eced7e24478b6c89f48e8d0c43482  R-3.3.2.tar.gz"