aboutsummaryrefslogtreecommitdiff
path: root/reproduce/software/make/python.mk
diff options
context:
space:
mode:
authorMohammad Akhlaghi <mohammad@akhlaghi.org>2019-10-30 14:18:00 +0000
committerMohammad Akhlaghi <mohammad@akhlaghi.org>2019-10-30 15:19:45 +0000
commit315172710f5be42b14ac7e1de91a4660368a3c47 (patch)
treeab4614b5e4a1d6055eb62e3a8a9672db17a60fc5 /reproduce/software/make/python.mk
parent3fc44bc6c34cf436a885d0e2ab4dc591d233d573 (diff)
Tarballs set as order-only prerequisites, not needed for build calls
Until now, the tarballs were the first normal prerequisite of the software. As a result if their date changed, the whole software would be re-built. However, for tarballs specifically, we actually check their contents with a checksum, so their date is irrelevant (if its newer than the built program, but has the same checksum, there is no need to re-build the software). Also, calling the tarball name as an argument to the building process (for example `gbuild') was redundant. It is now automatically found from the list of order-only prerequisites within `gbuild' and `cbuild' (similar to how it was previously found in the `pybuild' for Python building). A `README.md' file has also been placed in `reproduce/software/make' to help describe the shared properties of the software building Makefiles. This will hopefully grow much larger in the future.
Diffstat (limited to 'reproduce/software/make/python.mk')
-rw-r--r--reproduce/software/make/python.mk133
1 files changed, 69 insertions, 64 deletions
diff --git a/reproduce/software/make/python.mk b/reproduce/software/make/python.mk
index 9b107f0..ce0c974 100644
--- a/reproduce/software/make/python.mk
+++ b/reproduce/software/make/python.mk
@@ -131,7 +131,7 @@ $(pytarballs): $(tdir)/%:
# a number or dash in their name), we need special consideration
# because the tokenization above will produce `python' as the
# first string.
- if [ $* = python-dateutil-$(python-dateutil-version).tar.gz ]; then
+ @if [ $* = python-dateutil-$(python-dateutil-version).tar.gz ]; then
n=dateutil
elif [ $* = h5py-$(h5py-version).tar.gz ]; then
n=h5py
@@ -264,8 +264,10 @@ $(pytarballs): $(tdir)/%:
# controlled `sha512sum' build (as part of GNU Coreutils). So we
# don't need to check its existance like `basic.mk'.
checksum=$$(sha512sum "$@.unchecked" | awk '{print $$1}')
- if [ x"$$checksum" = x"$$c" ]; then mv "$@.unchecked" "$@"
- else echo "ERROR: Non-matching checksum for '$*'."
+ 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
@@ -280,14 +282,14 @@ $(pytarballs): $(tdir)/%:
#
# While this Makefile is for Python programs, in some cases, we need
# certain programs (like Python itself), or libraries for the modules.
-$(ibidir)/libffi: $(tdir)/libffi-$(libffi-version).tar.gz
+$(ibidir)/libffi: | $(tdir)/libffi-$(libffi-version).tar.gz
# On some Fedora systems, libffi installs in `lib64', not
# `lib'. This will cause problems when building setuptools
# later. To fix this problem, we'll first check if this has indeed
# happened (it exists under `lib64', but not under `lib'). If so,
# we'll put a copy of the installed libffi libraries in `lib'.
- $(call gbuild, $<, libffi-$(libffi-version), , \
+ $(call gbuild, libffi-$(libffi-version), , \
CFLAGS="-DNO_JAVA_RAW_API=1") \
&& if [ -f $(idir)/lib64/libffi.a ] \
&& ! [ -f $(idir)/lib/libffi.a ]; then \
@@ -296,21 +298,21 @@ $(ibidir)/libffi: $(tdir)/libffi-$(libffi-version).tar.gz
&& echo "Libffi $(libffi-version)" > $@
$(ibidir)/python: $(ibidir)/libffi \
- $(tdir)/python-$(python-version).tar.gz
+ | $(tdir)/python-$(python-version).tar.gz
# On Mac systems, the build complains about `clang' specific
# features, so we can't use our own GCC build here.
+ echo "HEREKJRE"; \
if [ x$(on_mac_os) = xyes ]; then \
export CC=clang; \
export CXX=clang++; \
- fi; \
- $(call gbuild, $(filter $(tdir)/%,$^), \
- Python-$(python-version),, \
+ fi; echo; echo "$@: HERE"; echo;\
+ $(call gbuild, Python-$(python-version),, \
--without-ensurepip \
--with-system-ffi \
--enable-shared) \
&& ln -sf $(ildir)/python$(python-major-version) $(ildir)/python \
&& ln -sf $(ibdir)/python$(python-major-version) $(ibdir)/python \
- && ln -sf $(iidir)/python$(python-major-version)m $(iidir)/python(python-major-version) \
+ && ln -sf $(iidir)/python$(python-major-version)m $(iidir)/python$(python-major-version) \
&& rm -rf $(ipydir) \
&& mkdir $(ipydir) \
&& echo "Python $(python-version)" > $@
@@ -323,7 +325,10 @@ $(ibidir)/python: $(ibidir)/libffi \
# ----------------------------------
#
# To build Python packages with direct access to a `setup.py' (if no direct
-# access to `setup.py' is needed, pip can be used).
+# access to `setup.py' is needed, pip can be used). Note that the
+# software's packaged source code is the first prerequisite that is in the
+# `tdir' directory.
+#
# Arguments of this function are the numbers
# 1) Unpack command
# 2) Unpacked directory name after unpacking the tarball
@@ -331,7 +336,7 @@ $(ibidir)/python: $(ibidir)/libffi \
# 4) Official software name (for paper).
# 5) Manual step after installation.
pybuild = cd $(ddir); rm -rf $(2); \
- if ! $(1) $(filter $(tdir)/%,$^); then \
+ if ! $(1) $(word 1,$(filter $(tdir)/%,$|)); then \
echo; echo "Tar error"; exit 1; \
fi; \
cd $(2); \
@@ -358,12 +363,12 @@ pybuild = cd $(ddir); rm -rf $(2); \
#
# All the necessary Python modules go here.
$(ipydir)/asn1crypto: $(ipydir)/setuptools \
- $(tdir)/asn1crypto-$(asn1crypto-version).tar.gz \
+ | $(tdir)/asn1crypto-$(asn1crypto-version).tar.gz
$(call pybuild, tar xf, asn1crypto-$(asn1crypto-version), , \
Asn1crypto $(asn1crypto-version))
$(ipydir)/asteval: $(ipydir)/numpy \
- $(tdir)/asteval-$(asteval-version).tar.gz
+ | $(tdir)/asteval-$(asteval-version).tar.gz
$(call pybuild, tar xf, asteval-$(asteval-version), , \
ASTEVAL $(asteval-version))
@@ -373,41 +378,41 @@ $(ipydir)/astroquery: $(ipydir)/numpy \
$(ipydir)/html5lib \
$(ipydir)/requests \
$(ipydir)/beautifulsoup4 \
- $(tdir)/astroquery-$(astroquery-version).tar.gz
+ | $(tdir)/astroquery-$(astroquery-version).tar.gz
$(call pybuild, tar xf, astroquery-$(astroquery-version), ,\
Astroquery $(astroquery-version))
$(ipydir)/astropy: $(ipydir)/h5py \
$(ipydir)/scipy \
$(ipydir)/numpy \
- $(tdir)/astropy-$(astropy-version).tar.gz
+ | $(tdir)/astropy-$(astropy-version).tar.gz
$(call pybuild, tar xf, astropy-$(astropy-version)) \
&& cp $(dtexdir)/astropy.tex $(ictdir)/ \
&& echo "Astropy $(astropy-version) \citep{astropy2013,astropy2018}" > $@
$(ipydir)/beautifulsoup4: $(ipydir)/soupsieve \
- $(tdir)/beautifulsoup4-$(beautifulsoup4-version).tar.gz
+ | $(tdir)/beautifulsoup4-$(beautifulsoup4-version).tar.gz
$(call pybuild, tar xf, beautifulsoup4-$(beautifulsoup4-version), ,\
BeautifulSoup $(beautifulsoup4-version))
$(ipydir)/certifi: $(ipydir)/setuptools \
- $(tdir)/certifi-$(certifi-version).tar.gz
+ | $(tdir)/certifi-$(certifi-version).tar.gz
$(call pybuild, tar xf, certifi-$(certifi-version), ,\
Certifi $(certifi-version))
$(ipydir)/cffi: $(ibidir)/libffi \
$(ipydir)/pycparser \
- $(tdir)/cffi-$(cffi-version).tar.gz
+ | $(tdir)/cffi-$(cffi-version).tar.gz
$(call pybuild, tar xf, cffi-$(cffi-version), ,\
cffi $(cffi-version))
$(ipydir)/chardet: $(ipydir)/setuptools \
- $(tdir)/chardet-$(chardet-version).tar.gz
+ | $(tdir)/chardet-$(chardet-version).tar.gz
$(call pybuild, tar xf, chardet-$(chardet-version), ,\
Chardet $(chardet-version))
$(ipydir)/corner: $(ipydir)/matplotlib \
- $(tdir)/corner-$(corner-version).tar.gz
+ | $(tdir)/corner-$(corner-version).tar.gz
$(call pybuild, tar xf, corner-$(corner-version), ,\
Corner $(corner-version)) \
&& cp $(dtexdir)/corner.tex $(ictdir)/ \
@@ -415,50 +420,50 @@ $(ipydir)/corner: $(ipydir)/matplotlib \
$(ipydir)/cryptography: $(ipydir)/cffi \
$(ipydir)/asn1crypto \
- $(tdir)/cryptography-$(cryptography-version).tar.gz
+ | $(tdir)/cryptography-$(cryptography-version).tar.gz
$(call pybuild, tar xf, cryptography-$(cryptography-version), ,\
Cryptography $(cryptography-version))
$(ipydir)/cycler: $(ipydir)/six \
- $(tdir)/cycler-$(cycler-version).tar.gz
+ | $(tdir)/cycler-$(cycler-version).tar.gz
$(call pybuild, tar xf, cycler-$(cycler-version), ,\
Cycler $(cycler-version))
$(ipydir)/cython: $(ipydir)/setuptools \
- $(tdir)/cython-$(cython-version).tar.gz
+ | $(tdir)/cython-$(cython-version).tar.gz
$(call pybuild, tar xf, Cython-$(cython-version)) \
&& cp $(dtexdir)/cython.tex $(ictdir)/ \
&& echo "Cython $(cython-version) \citep{cython2011}" > $@
$(ipydir)/esutil: $(ipydir)/numpy \
- $(tdir)/esutil-$(esutil-version).tar.gz
+ | $(tdir)/esutil-$(esutil-version).tar.gz
$(call pybuild, tar xf, esutil-$(esutil-version), ,\
esutil $(esutil-version))
$(ipydir)/eigency: $(ibidir)/eigen \
- $(tdir)/eigency-$(eigency-version).tar.gz
+ | $(tdir)/eigency-$(eigency-version).tar.gz
$(call pybuild, tar xf, eigency-$(eigency-version), ,\
eigency $(eigency-version))
$(ipydir)/emcee: $(ipydir)/numpy \
$(ipydir)/setuptools_scm \
- $(tdir)/emcee-$(emcee-version).tar.gz
+ | $(tdir)/emcee-$(emcee-version).tar.gz
$(call pybuild, tar xf, emcee-$(emcee-version), ,\
emcee $(emcee-version))
$(ipydir)/entrypoints: $(ipydir)/setuptools \
- $(tdir)/entrypoints-$(entrypoints-version).tar.gz
+ | $(tdir)/entrypoints-$(entrypoints-version).tar.gz
$(call pybuild, tar xf, entrypoints-$(entrypoints-version), ,\
EntryPoints $(entrypoints-version))
$(ipydir)/flake8: $(ipydir)/pyflakes \
$(ipydir)/pycodestyle \
- $(tdir)/flake8-$(flake8-version).tar.gz
+ | $(tdir)/flake8-$(flake8-version).tar.gz
$(call pybuild, tar xf, flake8-$(flake8-version), ,\
Flake8 $(flake8-version))
$(ipydir)/future: $(ipydir)/setuptools \
- $(tdir)/future-$(future-version).tar.gz
+ | $(tdir)/future-$(future-version).tar.gz
$(call pybuild, tar xf, future-$(future-version), ,\
Future $(future-version))
@@ -467,7 +472,7 @@ $(ipydir)/galsim: $(ipydir)/future \
$(ipydir)/eigency \
$(ipydir)/pybind11 \
$(ipydir)/lsstdesccoord \
- $(tdir)/galsim-$(galsim-version).tar.gz
+ | $(tdir)/galsim-$(galsim-version).tar.gz
$(call pybuild, tar xf, GalSim-$(galsim-version), ,) \
&& cp $(dtexdir)/galsim.tex $(ictdir)/ \
&& echo "Galsim $(galsim-version) \citep{galsim}" > $@
@@ -478,7 +483,7 @@ $(ipydir)/h5py: $(ipydir)/six \
$(ipydir)/cython \
$(ipydir)/mpi4py \
$(ipydir)/pypkgconfig \
- $(tdir)/h5py-$(h5py-version).tar.gz
+ | $(tdir)/h5py-$(h5py-version).tar.gz
export HDF5_MPI=ON; \
export HDF5_DIR=$(ildir); \
$(call pybuild, tar xf, h5py-$(h5py-version), ,\
@@ -496,29 +501,29 @@ $(ipydir)/healpy: $(ibidir)/healpix
$(ipydir)/html5lib: $(ipydir)/six \
$(ipydir)/webencodings \
- $(tdir)/html5lib-$(html5lib-version).tar.gz
+ | $(tdir)/html5lib-$(html5lib-version).tar.gz
$(call pybuild, tar xf, html5lib-$(html5lib-version), ,\
HTML5lib $(html5lib-version))
$(ipydir)/idna: $(ipydir)/setuptools \
- $(tdir)/idna-$(idna-version).tar.gz
+ | $(tdir)/idna-$(idna-version).tar.gz
$(call pybuild, tar xf, idna-$(idna-version), ,\
idna $(idna-version))
$(ipydir)/jeepney: $(ipydir)/setuptools \
- $(tdir)/jeepney-$(jeepney-version).tar.gz \
+ | $(tdir)/jeepney-$(jeepney-version).tar.gz \
$(call pybuild, tar xf, jeepney-$(jeepney-version), ,\
Jeepney $(jeepney-version))
$(ipydir)/keyring: $(ipydir)/entrypoints \
$(ipydir)/secretstorage \
$(ipydir)/setuptools_scm \
- $(tdir)/keyring-$(keyring-version).tar.gz
+ | $(tdir)/keyring-$(keyring-version).tar.gz
$(call pybuild, tar xf, keyring-$(keyring-version), ,\
Keyring $(keyring-version))
$(ipydir)/kiwisolver: $(ipydir)/setuptools \
- $(tdir)/kiwisolver-$(kiwisolver-version).tar.gz
+ | $(tdir)/kiwisolver-$(kiwisolver-version).tar.gz
$(call pybuild, tar xf, kiwisolver-$(kiwisolver-version), ,\
Kiwisolver $(kiwisolver-version))
@@ -529,12 +534,12 @@ $(ipydir)/lmfit: $(ipydir)/six \
$(ipydir)/asteval \
$(ipydir)/matplotlib \
$(ipydir)/uncertainties \
- $(tdir)/lmfit-$(lmfit-version).tar.gz
+ | $(tdir)/lmfit-$(lmfit-version).tar.gz
$(call pybuild, tar xf, lmfit-$(lmfit-version), ,\
LMFIT $(lmfit-version))
$(ipydir)/lsstdesccoord: $(ipydir)/setuptools \
- $(tdir)/lsstdesccoord-$(lsstdesccoord-version).tar.gz
+ | $(tdir)/lsstdesccoord-$(lsstdesccoord-version).tar.gz
$(call pybuild, tar xf, LSSTDESC.Coord-$(lsstdesccoord-version), ,\
LSSTDESC.Coord $(lsstdesccoord-version))
@@ -547,27 +552,27 @@ $(ipydir)/matplotlib: $(ipydir)/numpy \
$(ibidir)/ghostscript \
$(ibidir)/imagemagick \
$(ipydir)/python-dateutil \
- $(tdir)/matplotlib-$(matplotlib-version).tar.gz
+ | $(tdir)/matplotlib-$(matplotlib-version).tar.gz
$(call pybuild, tar xf, matplotlib-$(matplotlib-version)) \
&& cp $(dtexdir)/matplotlib.tex $(ictdir)/ \
&& echo "Matplotlib $(matplotlib-version) \citep{matplotlib2007}" > $@
$(ipydir)/mpi4py: $(ibidir)/openmpi \
$(ipydir)/setuptools \
- $(tdir)/mpi4py-$(mpi4py-version).tar.gz
+ | $(tdir)/mpi4py-$(mpi4py-version).tar.gz
$(call pybuild, tar xf, mpi4py-$(mpi4py-version)) \
&& cp $(dtexdir)/mpi4py.tex $(ictdir)/ \
&& echo "mpi4py $(mpi4py-version) \citep{mpi4py2011}" > $@
$(ipydir)/mpmath: $(ipydir)/setuptools \
- $(tdir)/mpmath-$(mpmath-version).tar.gz
+ | $(tdir)/mpmath-$(mpmath-version).tar.gz
$(call pybuild, tar xf, mpmath-$(mpmath-version), ,\
mpmath $(mpmath-version))
$(ipydir)/numpy: $(ibidir)/unzip \
$(ibidir)/openblas \
$(ipydir)/setuptools \
- $(tdir)/numpy-$(numpy-version).zip
+ | $(tdir)/numpy-$(numpy-version).zip
if [ x$(on_mac_os) = xyes ]; then \
export LDFLAGS="$(LDFLAGS) -undefined dynamic_lookup -bundle"; \
else \
@@ -580,52 +585,52 @@ $(ipydir)/numpy: $(ibidir)/unzip \
&& echo "Numpy $(numpy-version) \citep{numpy2011}" > $@
$(ibidir)/pip3: $(ipydir)/setuptools \
- $(tdir)/pip-$(pip-version).tar.gz
+ | $(tdir)/pip-$(pip-version).tar.gz
$(call pybuild, tar xf, pip-$(pip-version), ,\
PiP $(pip-version))
$(ipydir)/pycodestyle: $(ipydir)/setuptools \
- $(tdir)/pycodestyle-$(pycodestyle-version).tar.gz
+ | $(tdir)/pycodestyle-$(pycodestyle-version).tar.gz
$(call pybuild, tar xf, pycodestyle-$(pycodestyle-version), ,\
pycodestyle $(pycodestyle-version))
$(ipydir)/pybind11: $(ibidir)/eigen \
$(ibidir)/boost \
$(ipydir)/setuptools \
- $(tdir)/pybind11-$(pybind11-version).tar.gz
+ | $(tdir)/pybind11-$(pybind11-version).tar.gz
$(call pybuild, tar xf, pybind11-$(pybind11-version), ,\
pybind11 $(pybind11-version),
cp -r include/pybind11 $(iidir)/python$(python-major-version)m/)
$(ipydir)/pycparser: $(ipydir)/setuptools \
- $(tdir)/pycparser-$(pycparser-version).tar.gz
+ | $(tdir)/pycparser-$(pycparser-version).tar.gz
$(call pybuild, tar xf, pycparser-$(pycparser-version), ,\
pycparser $(pycparser-version))
$(ipydir)/pyflakes: $(ipydir)/setuptools \
- $(tdir)/pyflakes-$(pyflakes-version).tar.gz
+ | $(tdir)/pyflakes-$(pyflakes-version).tar.gz
$(call pybuild, tar xf, pyflakes-$(pyflakes-version), ,\
pyflakes $(pyflakes-version))
$(ipydir)/pyparsing: $(ipydir)/setuptools \
- $(tdir)/pyparsing-$(pyparsing-version).tar.gz
+ | $(tdir)/pyparsing-$(pyparsing-version).tar.gz
$(call pybuild, tar xf, pyparsing-$(pyparsing-version), ,\
PyParsing $(pyparsing-version))
$(ipydir)/pypkgconfig: $(ipydir)/setuptools \
- $(tdir)/pkgconfig-$(pypkgconfig-version).tar.gz
+ | $(tdir)/pkgconfig-$(pypkgconfig-version).tar.gz
$(call pybuild, tar xf, pkgconfig-$(pypkgconfig-version), ,
pkgconfig $(pypkgconfig-version))
$(ipydir)/python-dateutil: $(ipydir)/six \
$(ipydir)/setuptools_scm \
- $(tdir)/python-dateutil-$(python-dateutil-version).tar.gz
+ | $(tdir)/python-dateutil-$(python-dateutil-version).tar.gz
$(call pybuild, tar xf, python-dateutil-$(python-dateutil-version), ,\
python-dateutil $(python-dateutil-version))
$(ipydir)/pyyaml: $(ibidir)/yaml \
$(ipydir)/cython \
- $(tdir)/pyyaml-$(pyyaml-version).tar.gz
+ | $(tdir)/pyyaml-$(pyyaml-version).tar.gz
$(call pybuild, tar xf, PyYAML-$(pyyaml-version), ,\
PyYAML $(pyyaml-version))
@@ -634,12 +639,12 @@ $(ipydir)/requests: $(ipydir)/idna \
$(ipydir)/certifi \
$(ipydir)/chardet \
$(ipydir)/urllib3 \
- $(tdir)/requests-$(requests-version).tar.gz
+ | $(tdir)/requests-$(requests-version).tar.gz
$(call pybuild, tar xf, requests-$(requests-version), ,\
Requests $(requests-version))
$(ipydir)/scipy: $(ipydir)/numpy \
- $(tdir)/scipy-$(scipy-version).tar.gz
+ | $(tdir)/scipy-$(scipy-version).tar.gz
if [ x$(on_mac_os) = xyes ]; then \
export LDFLAGS="$(LDFLAGS) -undefined dynamic_lookup -bundle"; \
else \
@@ -652,56 +657,56 @@ $(ipydir)/scipy: $(ipydir)/numpy \
$(ipydir)/secretstorage: $(ipydir)/jeepney \
$(ipydir)/cryptography \
- $(tdir)/secretstorage-$(secretstorage-version).tar.gz
+ | $(tdir)/secretstorage-$(secretstorage-version).tar.gz
$(call pybuild, tar xf, SecretStorage-$(secretstorage-version), ,\
SecretStorage $(secretstorage-version))
$(ipydir)/setuptools: $(ibidir)/unzip \
$(ibidir)/python \
- $(tdir)/setuptools-$(setuptools-version).zip
+ | $(tdir)/setuptools-$(setuptools-version).zip
$(call pybuild, unzip, setuptools-$(setuptools-version), ,\
Setuptools $(setuptools-version))
$(ipydir)/setuptools_scm: $(ipydir)/setuptools \
- $(tdir)/setuptools_scm-$(setuptools_scm-version).tar.gz
+ | $(tdir)/setuptools_scm-$(setuptools_scm-version).tar.gz
$(call pybuild, tar xf, setuptools_scm-$(setuptools_scm-version), ,\
Setuptools-scm $(setuptools_scm-version))
$(ipydir)/sip_tpv: $(ipydir)/sympy \
$(ipydir)/astropy \
- $(tdir)/sip_tpv-$(sip_tpv-version).tar.gz
+ | $(tdir)/sip_tpv-$(sip_tpv-version).tar.gz
$(call pybuild, tar xf, sip_tpv-$(sip_tpv-version), ,) \
&& cp $(dtexdir)/sip_tpv.tex $(ictdir)/ \
&& echo "sip\_tpv $(sip_tpv-version) \citep{sip-tpv}" > $@
$(ipydir)/six: $(ipydir)/setuptools \
- $(tdir)/six-$(six-version).tar.gz
+ | $(tdir)/six-$(six-version).tar.gz
$(call pybuild, tar xf, six-$(six-version), ,\
Six $(six-version))
$(ipydir)/soupsieve: $(ipydir)/setuptools \
- $(tdir)/soupsieve-$(soupsieve-version).tar.gz
+ | $(tdir)/soupsieve-$(soupsieve-version).tar.gz
$(call pybuild, tar xf, soupsieve-$(soupsieve-version), ,\
SoupSieve $(soupsieve-version))
$(ipydir)/sympy: $(ipydir)/mpmath \
- $(tdir)/sympy-$(sympy-version).tar.gz
+ | $(tdir)/sympy-$(sympy-version).tar.gz
$(call pybuild, tar xf, sympy-$(sympy-version), ,) \
&& cp $(dtexdir)/sympy.tex $(ictdir)/ \
&& echo "SymPy $(sympy-version) \citep{sympy}" > $@
$(ipydir)/uncertainties: $(ipydir)/numpy \
- $(tdir)/uncertainties-$(uncertainties-version).tar.gz
+ | $(tdir)/uncertainties-$(uncertainties-version).tar.gz
$(call pybuild, tar xf, uncertainties-$(uncertainties-version), ,\
uncertainties $(uncertainties-version))
$(ipydir)/urllib3: $(ipydir)/setuptools \
- $(tdir)/urllib3-$(urllib3-version).tar.gz
+ | $(tdir)/urllib3-$(urllib3-version).tar.gz
$(call pybuild, tar xf, urllib3-$(urllib3-version), ,\
Urllib3 $(urllib3-version))
$(ipydir)/webencodings: $(ipydir)/setuptools \
- $(tdir)/webencodings-$(webencodings-version).tar.gz
+ | $(tdir)/webencodings-$(webencodings-version).tar.gz
$(call pybuild, tar xf, webencodings-$(webencodings-version), ,\
Webencodings $(webencodings-version))