aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Akhlaghi <mohammad@akhlaghi.org>2019-12-14 04:28:47 +0000
committerMohammad Akhlaghi <mohammad@akhlaghi.org>2019-12-14 04:30:43 +0000
commitac80e3bc163a177c5b33ad2a1b8ab9f6f09becd8 (patch)
tree929457b77d1634b8b3caa9955d454f9550350b3d
parent8d65a9effe9fbd94cb0141e8a5c511ad8d6cda9d (diff)
Core R package is now in template
With this commit, we now have the core R interpretter within the template. We should later include instructions to install R packages (possibly in a separate top-level Makefile like Python).
-rw-r--r--reproduce/software/config/installation/checksums.mk1
-rw-r--r--reproduce/software/config/installation/versions.mk1
-rw-r--r--reproduce/software/make/high-level.mk14
3 files changed, 16 insertions, 0 deletions
diff --git a/reproduce/software/config/installation/checksums.mk b/reproduce/software/config/installation/checksums.mk
index 1a56016..999d057 100644
--- a/reproduce/software/config/installation/checksums.mk
+++ b/reproduce/software/config/installation/checksums.mk
@@ -115,6 +115,7 @@ openmpi-checksum = 760716974cb6b25ad820184622e1ee7926bc6fda87db6b574f76792bc1ca9
openssh-checksum = e280fa2d56f550efd37c5d2477670326261aa8b94d991f9eb17aad90e0c6c9c939efa90fe87d33260d0f709485cb05c379f0fd1bd44fc0d5190298b6398c9982
pixman-checksum = 1b0205dbe9d9185c68813ce577a889f3c83e83fbd9955c3a72d411c3b476e6be93fc246b5b6ef4ee17e2bb8eb6fb5559e01dff7feb6a6c4c6314f980e960d690
python-checksum = c25a72ad792f7c1b4c2f79faebbe9608d04b04b2fe58ab804cb4732cdaa75ea93d175f5e52b38e91cb6ae0559ea6b645d802c8b6a869584e8bb9b5018367ce3d
+R-checksum = 17513e9f4dd27c61c11f7aa45227aeeeefb375bf5d4e193b471724f379a1b2da33e127cbe91aa175cbbbb048b892047e2f610280585c8159242a6c94790b07f9
rpcsvc-proto-checksum = c3011d7d7ef97a4a751f6921df1a23e1dd8ac50fb0690c759d37010ed7be27968a2130e3b8872cb48d5914216f9d539096a424f1ec38a75f7ed899748151c6f4
scamp-checksum = 35034a367d2cd09dc51e727e0f23ef6234edc0d978fd71cda1e80391d86af160138cb57281f7f7f9047e35b1246a0de6b235414086a62524413ed423f498583f
scons-checksum = 0477038b014674049f12899b64584d44a85283d521b2422561e42020a5ae296a5af005684087c3ff410ed3fcbdcc5ff61998bc429eb29513f2a864138ffc4945
diff --git a/reproduce/software/config/installation/versions.mk b/reproduce/software/config/installation/versions.mk
index 97a5e1a..05fa631 100644
--- a/reproduce/software/config/installation/versions.mk
+++ b/reproduce/software/config/installation/versions.mk
@@ -111,6 +111,7 @@ openmpi-version = 4.0.1
openssh-version = 8.0p1
pixman-version = 0.38.0
python-version = 3.7.4
+R-version = 3.6.2
rpcsvc-proto-version = 1.4
scamp-version = 2.6.7
scons-version = 3.0.5
diff --git a/reproduce/software/make/high-level.mk b/reproduce/software/make/high-level.mk
index 56af4b9..f6c2f76 100644
--- a/reproduce/software/make/high-level.mk
+++ b/reproduce/software/make/high-level.mk
@@ -171,6 +171,7 @@ tarballs = $(foreach t, apachelog4cxx-$(apachelog4cxx-version).tar.lz \
openmpi-$(openmpi-version).tar.gz \
openssh-$(openssh-version).tar.gz \
pixman-$(pixman-version).tar.gz \
+ R-$(R-version).tar.gz \
scamp-$(scamp-version).tar.lz \
scons-$(scons-version).tar.gz \
sextractor-$(sextractor-version).tar.lz \
@@ -267,6 +268,9 @@ $(tarballs): $(tdir)/%: | $(lockdir)
w=https://download.open-mpi.org/release/open-mpi/v$$majorver/$*
elif [ $$n = openssh ]; then c=$(openssh-checksum); w=https://artfiles.org/openbsd/OpenSSH/portable
elif [ $$n = pixman ]; then c=$(pixman-checksum); w=https://www.cairographics.org/releases
+ elif [ $$n = R ]; then c=$(R-checksum);
+ majver=$$(echo $(R-version) | sed -e's/\./ /g' | awk '{print $$1}')
+ w=https://cran.r-project.org/src/base/R-$$majver
elif [ $$n = rpcsvc ]; then c=$(rpcsvc-proto-checksum); w=https://github.com/thkukuk/rpcsvc-proto/releases/download/v$(rpcsvc-proto-version)
elif [ $$n = scamp ]; then c=$(scamp-checksum); w=http://akhlaghi.org/reproduce-software
elif [ $$n = scons ]; then
@@ -1024,6 +1028,16 @@ $(ibidir)/netpbm: $(ibidir)/unzip \
&& rm -rf $$unpackdir \
&& echo "Netpbm $(netpbm-version)" > $@
+# R programming language
+$(ibidir)/R: $(ibidir)/libpng \
+ $(ibidir)/libjpeg \
+ $(ibidir)/libtiff \
+ | $(tdir)/R-$(R-version).tar.gz
+ export R_SHELL=$(SHELL); \
+ $(call gbuild, R-$(R-version), static, \
+ --without-x --with-readline) \
+ && echo "R $(R-version)" > $@
+
# SCAMP documentation says ATLAS is a mandatory prerequisite for using
# SCAMP. We have ATLAS into the project but there are some problems with the
# libraries that are not yet solved. However, we tried to install it with