aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--reproduce/software/config/installation/checksums.mk3
-rw-r--r--reproduce/software/config/installation/versions.mk3
-rw-r--r--reproduce/software/make/high-level.mk49
3 files changed, 49 insertions, 6 deletions
diff --git a/reproduce/software/config/installation/checksums.mk b/reproduce/software/config/installation/checksums.mk
index d061595..5103086 100644
--- a/reproduce/software/config/installation/checksums.mk
+++ b/reproduce/software/config/installation/checksums.mk
@@ -91,8 +91,10 @@ lapack-checksum = 17786cb7306fccdc9b4a242de7f64fc261ebe6a10b6ec55f519deb4cb673cb
libffi-checksum = 980ca30a8d76f963fca722432b1fe5af77d7a4e4d2eac5144fbc5374d4c596609a293440573f4294207e1bdd9fda80ad1e1cafb2ffb543df5a275bc3bd546483
libgit2-checksum = 0879c162e2e1dc00eadfbda22cd1f9d3a95b4ec2b653c108983f37c2f695140882de4d50d7cbc04ced247125a4e9fe6df16130e1267891aecdb2411d920db5c6
libjpeg-checksum = 74ea5af3545657d4ac03f8f7933913112cc2d982f0e379d0e5647f1acac21931468e53806297c30ebe180c7bcf84919a0ac20a4195afb03db03060d57904ef6c
+libnsl-checksum = a3c8f674357674b7ed4b26c05adde607f39be8d6dc9ff715448e1fcc5fc23d11fbb4ce85a6e493b79bdb0bb450dc3ffb1fb480715779f738d7bc016fae91621d
libpng-checksum = 59e8c1059013497ae616a14c3abbe239322d3873c6ded0912403fc62fb260561768230b6ab997e2cccc3b868c09f539fd13635616b9fa0dd6279a3f63ec7e074
libtiff-checksum = d213e5db09fd56b8977b187c5a756f60d6e3e998be172550c2892dbdb4b2a8e8c750202bc863fe27d0d1c577ab9de1710d15e9f6ed665aadbfd857525a81eea8
+libtirpc-checksum = 392f391f9fc1bd68d81dc44e4058831a64b32790b5c8c37338b0ab416fad2ae4d16389e632596734dba09780347918cc65c6f134e0c1afd09e81ec250785ed23
libxml2-checksum = cb7784ba4e72e942614e12e4f83f4ceb275f3d738b30e3b5c1f25edf8e9fa6789e854685974eed95b362049dbf6c8e7357e0327d64c681ed390534ac154e6810
netpbm-checksum = 064720f8a9d0a502488e1af4daecdbf3936910996507ca6f311073a0ad842346692a148eb1ddf7b717f7b108f60500246cb4b83f4d3665f5fc285a84ae1d63d6
openblas-checksum = 91b3074eb922453bf843158b4281cde65db9e8bbdd7590e75e9e6cdcb486157f7973f2936f327bb3eb4f1702ce0ba51ae6729d8d4baf2d986c50771e8f696df0
@@ -100,6 +102,7 @@ openmpi-checksum = 760716974cb6b25ad820184622e1ee7926bc6fda87db6b574f76792bc1ca9
openssh-checksum = e280fa2d56f550efd37c5d2477670326261aa8b94d991f9eb17aad90e0c6c9c939efa90fe87d33260d0f709485cb05c379f0fd1bd44fc0d5190298b6398c9982
pixman-checksum = 1b0205dbe9d9185c68813ce577a889f3c83e83fbd9955c3a72d411c3b476e6be93fc246b5b6ef4ee17e2bb8eb6fb5559e01dff7feb6a6c4c6314f980e960d690
python-checksum = c87be001f3de677f7838cc7767beefe5781d3d5e4ba39abb8dba1d77ce4a334660e27ed2dfd26bc90afcdb94b5b8a3a7aea329852557404d1c85cb2c268651db
+rpcsvc-proto-checksum = c3011d7d7ef97a4a751f6921df1a23e1dd8ac50fb0690c759d37010ed7be27968a2130e3b8872cb48d5914216f9d539096a424f1ec38a75f7ed899748151c6f4
scamp-checksum = 35034a367d2cd09dc51e727e0f23ef6234edc0d978fd71cda1e80391d86af160138cb57281f7f7f9047e35b1246a0de6b235414086a62524413ed423f498583f
scons-checksum = 0477038b014674049f12899b64584d44a85283d521b2422561e42020a5ae296a5af005684087c3ff410ed3fcbdcc5ff61998bc429eb29513f2a864138ffc4945
sextractor-checksum = 4035710f9b8a20a0bb1a3913dab2dadd8444c179bf6dee425e0e8bb66a772944ea189bfce89fd791d316a790fc4b2cb15a62633b19d1d5331b1803dec2e70af7
diff --git a/reproduce/software/config/installation/versions.mk b/reproduce/software/config/installation/versions.mk
index 085646c..7105f59 100644
--- a/reproduce/software/config/installation/versions.mk
+++ b/reproduce/software/config/installation/versions.mk
@@ -88,14 +88,17 @@ imagemagick-version = 7.0.8-46
imfit-version = 1.6.1
libffi-version = 3.2.1
libjpeg-version = v9b
+libnsl-version = 1.2.0-4a062cf
libpng-version = 1.6.37
libtiff-version = 4.0.10
+libtirpc-version = 1.1.4
libxml2-version = 2.9.9
openblas-version = 0.3.5
openmpi-version = 4.0.1
openssh-version = 8.0p1
pixman-version = 0.38.0
python-version = 3.7.3
+rpcsvc-proto-version = 1.4
scamp-version = 2.6.7
scons-version = 3.0.5
sextractor-version = 2.25.0
diff --git a/reproduce/software/make/high-level.mk b/reproduce/software/make/high-level.mk
index a448422..96cdb23 100644
--- a/reproduce/software/make/high-level.mk
+++ b/reproduce/software/make/high-level.mk
@@ -148,8 +148,10 @@ tarballs = $(foreach t, astrometry.net-$(astrometrynet-version).tar.gz \
install-tl-unx.tar.gz \
jpegsrc.$(libjpeg-version).tar.gz \
lapack-$(lapack-version).tar.gz \
- libpng-$(libpng-version).tar.xz \
libgit2-$(libgit2-version).tar.gz \
+ libnsl-$(libnsl-version).tar.gz \
+ libpng-$(libpng-version).tar.xz \
+ libtirpc-$(libtirpc-version).tar.bz2 \
libxml2-$(libxml2-version).tar.gz \
netpbm-$(netpbm-version).tar.gz \
openblas-$(openblas-version).tar.gz \
@@ -161,6 +163,7 @@ tarballs = $(foreach t, astrometry.net-$(astrometrynet-version).tar.gz \
sextractor-$(sextractor-version).tar.lz \
swarp-$(swarp-version).tar.gz \
swig-$(swig-version).tar.gz \
+ rpcsvc-proto-$(rpcsvc-proto-version).tar.xz \
tides-$(tides-version).tar.gz \
tiff-$(libtiff-version).tar.gz \
wcslib-$(wcslib-version).tar.bz2 \
@@ -173,7 +176,7 @@ $(tarballs): $(tdir)/%: | $(lockdir)
n=$$(echo $* | sed -e's/[0-9\-]/ /g' -e's/\./ /g' \
| awk '{print $$1}' )
- # Set the top download link of the requested tarball.
+ # Set the top download link of the requested tarball.
mergenames=1
if [ $$n = astrometry ]; then c=$(astrometrynet-checksum); w=http://astrometry.net/downloads
elif [ $$n = atlas ]; then
@@ -211,11 +214,13 @@ $(tarballs): $(tdir)/%: | $(lockdir)
elif [ $$n = install ]; then c=NO-CHECK-SUM; w=http://mirror.ctan.org/systems/texlive/tlnet
elif [ $$n = jpegsrc ]; then c=$(libjpeg-checksum); w=http://ijg.org/files
elif [ $$n = lapack ]; then c=$(lapack-checksum); w=http://www.netlib.org/lapack
+ elif [ $$n = libnsl ]; then c=$(libnsl-checksum); w=http://akhlaghi.org/reproduce-software
elif [ $$n = libpng ]; then c=$(libpng-checksum); w=https://download.sourceforge.net/libpng
elif [ $$n = libgit ]; then
mergenames=0
c=$(libgit2-checksum)
w=https://github.com/libgit2/libgit2/archive/v$(libgit2-version).tar.gz
+ elif [ $$n = libtirpc ]; then c=$(libtirpc-checksum); w=https://downloads.sourceforge.net/libtirpc
elif [ $$n = libxml ]; then c=$(libxml-checksum); w=ftp://xmlsoft.org/libxml2
elif [ $$n = netpbm ]; then c=$(netpbm-checksum); w=http://akhlaghi.org/reproduce-software
elif [ $$n = openblas ]; then
@@ -229,6 +234,7 @@ $(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 = 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
mergenames=0
@@ -273,12 +279,15 @@ $(tarballs): $(tdir)/%: | $(lockdir)
# controlled `sha512sum' build (as part of GNU Coreutils). So we
# don't need to check its existance like `basic.mk'. But for LaTeX,
# we need to ignore a checksum (it downloads the binaries).
- if [ $$c == NO-CHECK-SUM ]; then
+ if [ x"$$c" == x"NO-CHECK-SUM" ]; then
mv "$@.unchecked" "$@"
else
checksum=$$(sha512sum "$@.unchecked" | awk '{print $$1}')
- if [ x$$checksum = x$$c ]; then mv "$@.unchecked" "$@"
- else echo "ERROR: Non-matching checksum for '$*'."; exit 1
+ if [ x"$$checksum" = x"$$c" ]; then mv "$@.unchecked" "$@"
+ else echo "ERROR: Non-matching checksum for '$*'."
+ echo "Checksum should be: $$c"
+ echo "Checksum is: $$checksum"
+ exit 1
fi
fi
@@ -447,6 +456,13 @@ $(ibidir)/libjpeg: $(tdir)/jpegsrc.$(libjpeg-version).tar.gz
$(call gbuild, $<, jpeg-9b, static) \
&& echo "Libjpeg $(libjpeg-version)" > $@
+$(ibidir)/libnsl: $(tdir)/libnsl-$(libnsl-version).tar.gz \
+ $(ibidir)/rpcsvc-proto \
+ $(ibidir)/libtirpc
+ $(call gbuild, $<, libnsl-$(libnsl-version), static, \
+ --sysconfdir=$(idir)/etc) \
+ && echo "Libnsl $(libnsl-version)" > $@
+
$(ibidir)/libpng: $(tdir)/libpng-$(libpng-version).tar.xz
$(call gbuild, $<, libpng-$(libpng-version), static) \
&& echo "Libpng $(libpng-version)" > $@
@@ -457,6 +473,11 @@ $(ibidir)/libtiff: $(tdir)/tiff-$(libtiff-version).tar.gz \
--disable-webp --disable-zstd) \
&& echo "Libtiff $(libtiff-version)" > $@
+$(ibidir)/libtirpc: $(tdir)/libtirpc-$(libtirpc-version).tar.bz2
+ $(call gbuild, $<, libtirpc-$(libtirpc-version), static, \
+ --disable-gssapi, V=1) \
+ echo "libtirpc $(libtirpc-version)" > $@
+
$(ibidir)/libxml2: $(tdir)/libxml2-$(libxml2-version).tar.gz
# The libxml2 tarball also contains Python bindings which are built and
# installed to a system directory by default. If you don't need the Python
@@ -500,6 +521,10 @@ $(ibidir)/pixman: $(tdir)/pixman-$(pixman-version).tar.gz
-j$(numthreads) V=1) \
&& echo "Pixman $(pixman-version)" > $@
+$(ibidir)/rpcsvc-proto: $(tdir)/rpcsvc-proto-$(rpcsvc-proto-version).tar.xz
+ $(call gbuild, $<, rpcsvc-proto-$(rpcsvc-proto-version), static) \
+ && echo "rpcsvc $(rpcsvc-proto-version)" > $@
+
$(ibidir)/tides: $(tdir)/tides-$(tides-version).tar.gz
$(call gbuild, $<, tides-$(tides-version), static,\
--with-gmp=$(idir) --with-mpfr=$(idir)) \
@@ -894,8 +919,20 @@ $(itidir)/texlive-ready-tlmgr: $(tdir)/install-tl-unx.tar.gz \
# To keep things modular and simple, we'll break up the installation of TeX
# Live itself (only very basic TeX and LaTeX) and the installation of its
# necessary packages into two packages.
+#
+# Note that Biber needs to link with libraries like libnsl. However, we
+# don't currently build biber from source. So we can't choose the library
+# version. But we have the source and build instructions for the `nsl'
+# library. When we later build biber from source, we can easily use them.
+#
+#ifeq ($(on_mac_os),yes)
+#forbiber =
+#else
+#forbiber = $(ibidir)/libnsl
+#endif
$(itidir)/texlive: reproduce/software/config/installation/texlive.mk \
- $(itidir)/texlive-ready-tlmgr
+ $(itidir)/texlive-ready-tlmgr \
+ $(forbiber)
# To work with TeX live installation, we'll need the internet.
@res=$$(cat $(itidir)/texlive-ready-tlmgr)