Sorry, I forgot about the file: #============================================================================== # This file has been automatically generated by # <MY_HOME>/sage/build/install # You should not edit it by hand #==============================================================================
SHELL = /bin/bash # Standard packages ATLAS=atlas-3.10.2 BOEHM_GC=boehm_gc-7.2d.p0 BOOST_CROPPED=boost_cropped-1.52.0 BZIP2=bzip2-1.0.6.20140317 CDDLIB=cddlib-094g.p0 CEPHES=cephes-2.8.p1 CLIQUER=cliquer-1.21.p2 COMBINATORIAL_DESIGNS=combinatorial_designs-20140630 CONWAY=conway_polynomials-0.4.p0 CVXOPT=cvxopt-1.1.7 CYTHON=cython-0.21.1 DATEUTIL=dateutil-2.2 DOCUTILS=docutils-0.7.p0 ECL=ecl-13.5.1.p0 ECLIB=eclib-20140921 ECM=ecm-6.4.4 ELLIPTIC_CURVES=elliptic_curves-0.7 FFLASFFPACK=fflas_ffpack-1.6.0.p1 FLINT=flint-2.4.4 FLINTQS=flintqs-20070817.p8 FPLLL=libfplll-4.0.4 FREETYPE=freetype-2.5.2.p1 GAP=gap-4.7.5 GCC=gcc-4.9.2 GD=gd-2.0.35.p7 GDMODULE=gdmodule-0.56.p8 GFAN=gfan-0.5.p0 GF2X=gf2x-1.1.p1 GIT=git-2.1.2 GIVARO=givaro-3.7.1 GLPK=glpk-4.44.p0 GRAPHS=graphs-20120404.p4 GSL=gsl-1.15.p1 ICONV=iconv-1.14 IML=iml-1.0.4 IPYTHON=ipython-2.3.0 JINJA2=jinja2-2.5.5 JMOL=jmol-14.2.4_2014.08.03 LCALC=lcalc-1.23.p13 LRCALC=lrcalc-1.1.7 LIBGAP=libgap-4.7.5.1 LIBPNG=libpng-1.2.51.p0 LINBOX=linbox-1.3.2.p1 M4RI=m4ri-20140914 M4RIE=m4rie-20140914 MATPLOTLIB=matplotlib-1.3.1 MAXIMA=maxima-5.34.1.p1 MPC=mpc-1.0.2.p0 MPFI=mpfi-1.5.1 MPFR=mpfr-3.1.2.p0 MPIR=mpir-2.6.0.p4 MPMATH=mpmath-0.18 NETWORKX=networkx-1.8.1 NTL=ntl-6.1.0.p0 NUMPY=numpy-1.8.1 PALP=palp-2.1.p1 PARI=pari-2.7.1.p1 PARI_GALDATA=pari_galdata-20080411 PARI_SEADATA_SMALL=pari_seadata_small-20090618 PATCH=patch-2.7.1 PEXPECT=pexpect-2.0.p6 PILLOW=pillow-2.2.2 PKGCONF=pkgconf-0.9.7 PKGCONFIG=pkgconfig-1.1.0 POLYBORI=polybori-0.8.3 POLYTOPES_DB=polytopes_db-20120220 PPL=ppl-1.1 PYCRYPTO=pycrypto-2.6.1.p0 PYGMENTS=pygments-1.3.1.p0 PYNAC=pynac-0.3.2 PYPARSING=pyparsing-2.0.1 PYTHON=python-2.7.8 PYZMQ=pyzmq-14.3.0 R=r-3.1.1.p0 RPY=rpy2-2.3.8 RATPOINTS=ratpoints-2.1.3.p3 READLINE=readline-6.3.008 RUBIKS=rubiks-20070912.p18 SAGENB=sagenb-0.11.1 SAGETEX=sagetex-2.3.4 SCIPY=scipy-0.14.0 SCONS=scons-1.2.0 SETUPTOOLS=setuptools-3.6.p0 SINGULAR=singular-3.1.6.p4 SIX=six-1.4.1 SPHINX=sphinx-1.2.2 SQLALCHEMY=sqlalchemy-0.5.8 SQLITE=sqlite-3.8.4.3 SYMMETRICA=symmetrica-2.0.p9 SYMPOW=sympow-1.018.1.p11 SYMPY=sympy-0.7.4 TACHYON=tachyon-0.98.9.p5 TORNADO=tornado-3.1.1 NCURSES=ncurses-5.9.20131221 ZEROMQ=zeromq-4.0.4 ZLIB=zlib-1.2.8.p0 ZNPOLY=zn_poly-0.9.p11 # Directory to keep track of which packages are installed INST=<MY_HOME>/sage/local/var/lib/sage/installed TOOLCHAIN = SCRIPT_SOURCES = \ $(SAGE_SRC)/bin/sage \ $(SAGE_SRC)/bin/sage-CSI \ $(SAGE_SRC)/bin/sage-CSI-helper.py \ $(SAGE_SRC)/bin/sage-README-osx.txt \ $(SAGE_SRC)/bin/sage-arch-env \ $(SAGE_SRC)/bin/sage-banner \ $(SAGE_SRC)/bin/sage-bdist \ $(SAGE_SRC)/bin/sage-build \ $(SAGE_SRC)/bin/sage-cachegrind \ $(SAGE_SRC)/bin/sage-callgrind \ $(SAGE_SRC)/bin/sage-cleaner \ $(SAGE_SRC)/bin/sage-clone-source \ $(SAGE_SRC)/bin/sage-coverage \ $(SAGE_SRC)/bin/sage-coverageall \ $(SAGE_SRC)/bin/sage-crap \ $(SAGE_SRC)/bin/sage-cython \ $(SAGE_SRC)/bin/sage-dev \ $(SAGE_SRC)/bin/sage-download-file \ $(SAGE_SRC)/bin/sage-download-upstream \ $(SAGE_SRC)/bin/sage-env \ $(SAGE_SRC)/bin/sage-eval \ $(SAGE_SRC)/bin/sage-fix-pkg-checksums \ $(SAGE_SRC)/bin/sage-fixdoctests \ $(SAGE_SRC)/bin/sage-gdb-commands \ $(SAGE_SRC)/bin/sage-grep \ $(SAGE_SRC)/bin/sage-grepdoc \ $(SAGE_SRC)/bin/sage-inline-fortran \ $(SAGE_SRC)/bin/sage-ipython \ $(SAGE_SRC)/bin/sage-list-experimental \ $(SAGE_SRC)/bin/sage-list-optional \ $(SAGE_SRC)/bin/sage-list-packages \ $(SAGE_SRC)/bin/sage-list-standard \ $(SAGE_SRC)/bin/sage-location \ $(SAGE_SRC)/bin/sage-massif \ $(SAGE_SRC)/bin/sage-maxima.lisp \ $(SAGE_SRC)/bin/sage-native-execute \ $(SAGE_SRC)/bin/sage-notebook \ $(SAGE_SRC)/bin/sage-num-threads.py \ $(SAGE_SRC)/bin/sage-omega \ $(SAGE_SRC)/bin/sage-open \ $(SAGE_SRC)/bin/sage-pkg \ $(SAGE_SRC)/bin/sage-preparse \ $(SAGE_SRC)/bin/sage-pypkg-location \ $(SAGE_SRC)/bin/sage-python \ $(SAGE_SRC)/bin/sage-rebase.bat \ $(SAGE_SRC)/bin/sage-rebase.sh \ $(SAGE_SRC)/bin/sage-rebaseall.bat \ $(SAGE_SRC)/bin/sage-rebaseall.sh \ $(SAGE_SRC)/bin/sage-rst2sws \ $(SAGE_SRC)/bin/sage-rst2txt \ $(SAGE_SRC)/bin/sage-rsyncdist \ $(SAGE_SRC)/bin/sage-run \ $(SAGE_SRC)/bin/sage-run-cython \ $(SAGE_SRC)/bin/sage-runtests \ $(SAGE_SRC)/bin/sage-sdist \ $(SAGE_SRC)/bin/sage-spkg \ $(SAGE_SRC)/bin/sage-starts \ $(SAGE_SRC)/bin/sage-startuptime.py \ $(SAGE_SRC)/bin/sage-sws2rst \ $(SAGE_SRC)/bin/sage-test-import \ $(SAGE_SRC)/bin/sage-update-src \ $(SAGE_SRC)/bin/sage-update-version \ $(SAGE_SRC)/bin/sage-upgrade \ $(SAGE_SRC)/bin/sage-valgrind \ $(SAGE_SRC)/bin/sage-version.sh \ $(SAGE_SRC)/bin/testcc.sh \ $(SAGE_SRC)/bin/testcflags.sh \ $(SAGE_SRC)/bin/testcxx.sh \ SCRIPTS = \ $(SAGE_LOCAL)/bin/sage \ $(SAGE_LOCAL)/bin/sage-CSI \ $(SAGE_LOCAL)/bin/sage-CSI-helper.py \ $(SAGE_LOCAL)/bin/sage-README-osx.txt \ $(SAGE_LOCAL)/bin/sage-arch-env \ $(SAGE_LOCAL)/bin/sage-banner \ $(SAGE_LOCAL)/bin/sage-bdist \ $(SAGE_LOCAL)/bin/sage-build \ $(SAGE_LOCAL)/bin/sage-cachegrind \ $(SAGE_LOCAL)/bin/sage-callgrind \ $(SAGE_LOCAL)/bin/sage-cleaner \ $(SAGE_LOCAL)/bin/sage-clone-source \ $(SAGE_LOCAL)/bin/sage-coverage \ $(SAGE_LOCAL)/bin/sage-coverageall \ $(SAGE_LOCAL)/bin/sage-crap \ $(SAGE_LOCAL)/bin/sage-cython \ $(SAGE_LOCAL)/bin/sage-dev \ $(SAGE_LOCAL)/bin/sage-download-file \ $(SAGE_LOCAL)/bin/sage-download-upstream \ $(SAGE_LOCAL)/bin/sage-env \ $(SAGE_LOCAL)/bin/sage-eval \ $(SAGE_LOCAL)/bin/sage-fix-pkg-checksums \ $(SAGE_LOCAL)/bin/sage-fixdoctests \ $(SAGE_LOCAL)/bin/sage-gdb-commands \ $(SAGE_LOCAL)/bin/sage-grep \ $(SAGE_LOCAL)/bin/sage-grepdoc \ $(SAGE_LOCAL)/bin/sage-inline-fortran \ $(SAGE_LOCAL)/bin/sage-ipython \ $(SAGE_LOCAL)/bin/sage-list-experimental \ $(SAGE_LOCAL)/bin/sage-list-optional \ $(SAGE_LOCAL)/bin/sage-list-packages \ $(SAGE_LOCAL)/bin/sage-list-standard \ $(SAGE_LOCAL)/bin/sage-location \ $(SAGE_LOCAL)/bin/sage-massif \ $(SAGE_LOCAL)/bin/sage-maxima.lisp \ $(SAGE_LOCAL)/bin/sage-native-execute \ $(SAGE_LOCAL)/bin/sage-notebook \ $(SAGE_LOCAL)/bin/sage-num-threads.py \ $(SAGE_LOCAL)/bin/sage-omega \ $(SAGE_LOCAL)/bin/sage-open \ $(SAGE_LOCAL)/bin/sage-pkg \ $(SAGE_LOCAL)/bin/sage-preparse \ $(SAGE_LOCAL)/bin/sage-pypkg-location \ $(SAGE_LOCAL)/bin/sage-python \ $(SAGE_LOCAL)/bin/sage-rebase.bat \ $(SAGE_LOCAL)/bin/sage-rebase.sh \ $(SAGE_LOCAL)/bin/sage-rebaseall.bat \ $(SAGE_LOCAL)/bin/sage-rebaseall.sh \ $(SAGE_LOCAL)/bin/sage-rst2sws \ $(SAGE_LOCAL)/bin/sage-rst2txt \ $(SAGE_LOCAL)/bin/sage-rsyncdist \ $(SAGE_LOCAL)/bin/sage-run \ $(SAGE_LOCAL)/bin/sage-run-cython \ $(SAGE_LOCAL)/bin/sage-runtests \ $(SAGE_LOCAL)/bin/sage-sdist \ $(SAGE_LOCAL)/bin/sage-spkg \ $(SAGE_LOCAL)/bin/sage-starts \ $(SAGE_LOCAL)/bin/sage-startuptime.py \ $(SAGE_LOCAL)/bin/sage-sws2rst \ $(SAGE_LOCAL)/bin/sage-test-import \ $(SAGE_LOCAL)/bin/sage-update-src \ $(SAGE_LOCAL)/bin/sage-update-version \ $(SAGE_LOCAL)/bin/sage-upgrade \ $(SAGE_LOCAL)/bin/sage-valgrind \ $(SAGE_LOCAL)/bin/sage-version.sh \ $(SAGE_LOCAL)/bin/testcc.sh \ $(SAGE_LOCAL)/bin/testcflags.sh \ $(SAGE_LOCAL)/bin/testcxx.sh \ EXTCODE_SOURCES = \ $(SAGE_SRC)/ext/gap/console.g \ $(SAGE_SRC)/ext/gap/joyner/hurwitz_crv_rr_sp.gap \ $(SAGE_SRC)/ext/gap/joyner/modular_crv_rr_sp.gap \ $(SAGE_SRC)/ext/gap/sage.g \ $(SAGE_SRC)/ext/graphs/graph_plot_js.html \ $(SAGE_SRC)/ext/images/corner.png \ $(SAGE_SRC)/ext/images/evaluate.png \ $(SAGE_SRC)/ext/images/evaluate_over.png \ $(SAGE_SRC)/ext/images/favicon.ico \ $(SAGE_SRC)/ext/images/sagelogo.png \ $(SAGE_SRC)/ext/magma/latex/latex.m \ $(SAGE_SRC)/ext/magma/latex/latex.spec \ $(SAGE_SRC)/ext/magma/sage/basic.m \ $(SAGE_SRC)/ext/magma/sage/sage.spec \ $(SAGE_SRC)/ext/magma/spec \ $(SAGE_SRC)/ext/maxima/willis/topoly.lisp \ $(SAGE_SRC)/ext/mwrank/PRIMES \ $(SAGE_SRC)/ext/notebook-ipython/static/sage-logo.png \ $(SAGE_SRC)/ext/notebook-ipython/templates/404.html \ $(SAGE_SRC)/ext/notebook-ipython/templates/error.html \ $(SAGE_SRC)/ext/notebook-ipython/templates/login.html \ $(SAGE_SRC)/ext/notebook-ipython/templates/logout.html \ $(SAGE_SRC)/ext/notebook-ipython/templates/notebook.html \ $(SAGE_SRC)/ext/notebook-ipython/templates/page.html \ $(SAGE_SRC)/ext/notebook-ipython/templates/tree.html \ $(SAGE_SRC)/ext/pari/buzzard/DimensionSk.g \ $(SAGE_SRC)/ext/pari/buzzard/Tpprog.g \ $(SAGE_SRC)/ext/pari/buzzard/genusn.g \ $(SAGE_SRC)/ext/pari/dokchitser/computel.gp \ $(SAGE_SRC)/ext/pari/dokchitser/ex-bsw \ $(SAGE_SRC)/ext/pari/dokchitser/ex-chgen \ $(SAGE_SRC)/ext/pari/dokchitser/ex-chqua \ $(SAGE_SRC)/ext/pari/dokchitser/ex-delta \ $(SAGE_SRC)/ext/pari/dokchitser/ex-eisen \ $(SAGE_SRC)/ext/pari/dokchitser/ex-gen2 \ $(SAGE_SRC)/ext/pari/dokchitser/ex-gen3 \ $(SAGE_SRC)/ext/pari/dokchitser/ex-gen4 \ $(SAGE_SRC)/ext/pari/dokchitser/ex-nf \ $(SAGE_SRC)/ext/pari/dokchitser/ex-shin \ $(SAGE_SRC)/ext/pari/dokchitser/ex-zeta \ $(SAGE_SRC)/ext/pari/dokchitser/ex-zeta2 \ $(SAGE_SRC)/ext/pari/dokchitser/testall \ $(SAGE_SRC)/ext/pari/simon/ell.gp \ $(SAGE_SRC)/ext/pari/simon/ellQ.gp \ $(SAGE_SRC)/ext/pari/simon/ellcommon.gp \ $(SAGE_SRC)/ext/pari/simon/qfsolve.gp \ $(SAGE_SRC)/ext/pari/simon/resultant3.gp \ $(SAGE_SRC)/ext/pickle_jar/pickle_jar.tar.bz2 \ $(SAGE_SRC)/ext/valgrind/pyalloc.supp \ $(SAGE_SRC)/ext/valgrind/sage-additional.supp \ $(SAGE_SRC)/ext/valgrind/sage.supp \ EXTCODE = \ $(SAGE_EXTCODE)/gap/console.g \ $(SAGE_EXTCODE)/gap/joyner/hurwitz_crv_rr_sp.gap \ $(SAGE_EXTCODE)/gap/joyner/modular_crv_rr_sp.gap \ $(SAGE_EXTCODE)/gap/sage.g \ $(SAGE_EXTCODE)/graphs/graph_plot_js.html \ $(SAGE_EXTCODE)/images/corner.png \ $(SAGE_EXTCODE)/images/evaluate.png \ $(SAGE_EXTCODE)/images/evaluate_over.png \ $(SAGE_EXTCODE)/images/favicon.ico \ $(SAGE_EXTCODE)/images/sagelogo.png \ $(SAGE_EXTCODE)/magma/latex/latex.m \ $(SAGE_EXTCODE)/magma/latex/latex.spec \ $(SAGE_EXTCODE)/magma/sage/basic.m \ $(SAGE_EXTCODE)/magma/sage/sage.spec \ $(SAGE_EXTCODE)/magma/spec \ $(SAGE_EXTCODE)/maxima/willis/topoly.lisp \ $(SAGE_EXTCODE)/mwrank/PRIMES \ $(SAGE_EXTCODE)/notebook-ipython/static/sage-logo.png \ $(SAGE_EXTCODE)/notebook-ipython/templates/404.html \ $(SAGE_EXTCODE)/notebook-ipython/templates/error.html \ $(SAGE_EXTCODE)/notebook-ipython/templates/login.html \ $(SAGE_EXTCODE)/notebook-ipython/templates/logout.html \ $(SAGE_EXTCODE)/notebook-ipython/templates/notebook.html \ $(SAGE_EXTCODE)/notebook-ipython/templates/page.html \ $(SAGE_EXTCODE)/notebook-ipython/templates/tree.html \ $(SAGE_EXTCODE)/pari/buzzard/DimensionSk.g \ $(SAGE_EXTCODE)/pari/buzzard/Tpprog.g \ $(SAGE_EXTCODE)/pari/buzzard/genusn.g \ $(SAGE_EXTCODE)/pari/dokchitser/computel.gp \ $(SAGE_EXTCODE)/pari/dokchitser/ex-bsw \ $(SAGE_EXTCODE)/pari/dokchitser/ex-chgen \ $(SAGE_EXTCODE)/pari/dokchitser/ex-chqua \ $(SAGE_EXTCODE)/pari/dokchitser/ex-delta \ $(SAGE_EXTCODE)/pari/dokchitser/ex-eisen \ $(SAGE_EXTCODE)/pari/dokchitser/ex-gen2 \ $(SAGE_EXTCODE)/pari/dokchitser/ex-gen3 \ $(SAGE_EXTCODE)/pari/dokchitser/ex-gen4 \ $(SAGE_EXTCODE)/pari/dokchitser/ex-nf \ $(SAGE_EXTCODE)/pari/dokchitser/ex-shin \ $(SAGE_EXTCODE)/pari/dokchitser/ex-zeta \ $(SAGE_EXTCODE)/pari/dokchitser/ex-zeta2 \ $(SAGE_EXTCODE)/pari/dokchitser/testall \ $(SAGE_EXTCODE)/pari/simon/ell.gp \ $(SAGE_EXTCODE)/pari/simon/ellQ.gp \ $(SAGE_EXTCODE)/pari/simon/ellcommon.gp \ $(SAGE_EXTCODE)/pari/simon/qfsolve.gp \ $(SAGE_EXTCODE)/pari/simon/resultant3.gp \ $(SAGE_EXTCODE)/pickle_jar/pickle_jar.tar.bz2 \ $(SAGE_EXTCODE)/valgrind/pyalloc.supp \ $(SAGE_EXTCODE)/valgrind/sage-additional.supp \ $(SAGE_EXTCODE)/valgrind/sage.supp \ # don't just use `install` since we don't want to change permissions $(SAGE_LOCAL)/bin/%: $(SAGE_SRC)/bin/% cp $< $@ # don't just use `install -D` since we don't want to change permissions # cp won't correctly setup the SAGE_EXTCODE directory structure (unlike install) # so we need a mkdir here to cp can copy into an existing folder $(SAGE_EXTCODE)/%: $(SAGE_SRC)/ext/% @mkdir -p "$(@D)" cp $< $@ #============================================================================== # What follows now is a copy of # <MY_HOME>/sage/build/deps #============================================================================== ############################################################################### # This file ($SAGE_ROOT/build/deps) will be copied into # $SAGE_ROOT/build/Makefile by $SAGE_ROOT/build/install ############################################################################### # Do not put an explicit path for sage-spkg here, it will be found in $PATH. SAGE_SPKG = sage-spkg -f PIPE = $(SAGE_ROOT)/build/pipestatus # Tell make not to look for files with these names: .PHONY: all all-sage base toolchain toolchain-deps # Make the 4 build phases: base, toolchain, toolchain-deps, all-sage # During the toolchain build, we export SAGE_BUILD_TOOLCHAIN=yes # such that packages can do different things when they are built # as prerequisite of GCC. all: $(MAKE) base env SAGE_BUILD_TOOLCHAIN=yes $(MAKE) toolchain $(MAKE) toolchain-deps $(MAKE) all-sage # All targets except for the base packages all-sage: \ $(INST)/$(ATLAS) \ $(INST)/$(BOEHM_GC) \ $(INST)/$(BOOST_CROPPED) \ $(INST)/$(CDDLIB) \ $(INST)/$(CEPHES) \ $(INST)/$(CLIQUER) \ $(INST)/$(COMBINATORIAL_DESIGNS) \ $(INST)/$(CONWAY) \ $(INST)/$(CVXOPT) \ $(INST)/$(CYTHON) \ $(INST)/$(DATEUTIL) \ $(INST)/$(DOCUTILS) \ $(INST)/$(ECL) \ $(INST)/$(ECLIB) \ $(INST)/$(ECM) \ $(INST)/$(ELLIPTIC_CURVES) \ $(INST)/$(FFLASFFPACK) \ $(INST)/$(FLINT) \ $(INST)/$(FLINTQS) \ $(INST)/$(FPLLL) \ $(INST)/$(FREETYPE) \ $(INST)/$(GAP) \ $(INST)/$(GD) \ $(INST)/$(GDMODULE) \ $(INST)/$(GFAN) \ $(INST)/$(GF2X) \ $(INST)/$(GIVARO) \ $(INST)/$(GIT) \ $(INST)/$(GLPK) \ $(INST)/$(GRAPHS) \ $(INST)/$(GSL) \ $(INST)/$(ICONV) \ $(INST)/$(IML) \ $(INST)/$(IPYTHON) \ $(INST)/$(JINJA2) \ $(INST)/$(JMOL) \ $(INST)/$(LCALC) \ $(INST)/$(LRCALC) \ $(INST)/$(LIBGAP) \ $(INST)/$(LIBPNG) \ $(INST)/$(LINBOX) \ $(INST)/$(M4RI) \ $(INST)/$(M4RIE) \ $(INST)/$(MATPLOTLIB) \ $(INST)/$(MAXIMA) \ $(INST)/$(MPC) \ $(INST)/$(MPFI) \ $(INST)/$(MPFR) \ $(INST)/$(MPIR) \ $(INST)/$(MPMATH) \ $(INST)/$(NETWORKX) \ $(INST)/$(NTL) \ $(INST)/$(NUMPY) \ $(INST)/$(PALP) \ $(INST)/$(PARI) \ $(INST)/$(PEXPECT) \ $(INST)/$(PILLOW) \ $(INST)/$(PKGCONF) \ $(INST)/$(PKGCONFIG) \ $(INST)/$(POLYBORI) \ $(INST)/$(POLYTOPES_DB) \ $(INST)/$(PPL) \ $(INST)/$(PYCRYPTO) \ $(INST)/$(PYGMENTS) \ $(INST)/$(PYNAC) \ $(INST)/$(PYPARSING) \ $(INST)/$(PYTHON) \ $(INST)/$(PYZMQ) \ $(INST)/$(RATPOINTS) \ $(INST)/$(R) \ $(INST)/$(RPY) \ $(INST)/$(READLINE) \ $(INST)/$(RUBIKS) \ $(INST)/$(SAGENB) \ $(INST)/$(SAGETEX) \ $(INST)/$(SCIPY) \ $(INST)/$(SCONS) \ $(INST)/$(SETUPTOOLS) \ $(INST)/$(SINGULAR) \ $(INST)/$(SIX) \ $(INST)/$(SPHINX) \ $(INST)/$(SQLALCHEMY) \ $(INST)/$(SQLITE) \ $(INST)/$(SYMMETRICA) \ $(INST)/$(SYMPOW) \ $(INST)/$(SYMPY) \ $(INST)/$(TACHYON) \ $(INST)/$(TORNADO) \ $(INST)/$(NCURSES) \ $(INST)/$(ZEROMQ) \ $(INST)/$(ZLIB) \ $(INST)/$(ZNPOLY) \ $(INST)/sage \ $(INST)/csage \ $(EXTCODE) \ $(SCRIPTS) # TOOLCHAIN consists of dependencies determined by build/install, # including for example the GCC package. toolchain: $(TOOLCHAIN) # Build all packages that GCC links against serially, otherwise this # leads to race conditions where some library which is used by GCC gets # reinstalled. Since system GCCs might use Sage's libraries, we do this # unconditionally. We still use the dependency checking from $(MAKE), # so this will not trigger useless rebuilds. # See #14168 and #14232. toolchain-deps: $(MAKE) $(INST)/$(ZLIB) $(MAKE) $(INST)/$(MPIR) $(MAKE) $(INST)/$(MPFR) $(MAKE) $(INST)/$(MPC) $(MAKE) $(INST)/$(PPL) # Everything needed to start up Sage using "./sage". Of course, not # every part of Sage will work. It does not include Maxima for example. SAGERUNTIME = $(SCRIPTS) $(INST)/sage $(INST)/$(SAGENB) $(INST)/$(IPYTHON) ############################################################################### # Building the base system # # This consists of packages which are required for the Sage build system # but not for Sage itself. Since nothing explicitly depends on these, # an update of these packages will not trigger a rebuild of every other # package during an upgrade, see #13415. ############################################################################### base: $(INST)/prereq $(INST)/$(BZIP2) $(INST)/$(PATCH) $(INST)/prereq: ../configure @cd ..; rm -f config.log; ln -s logs/pkgs/config.log config.log; \ ./configure $$PREREQ_OPTIONS || ( \ if [ "x$$SAGE_PORT" = x ]; then \ echo "If you would like to try to build Sage anyway (to help porting),"; \ echo "export the variable 'SAGE_PORT' to something non-empty."; \ exit 1; \ else \ echo "Since 'SAGE_PORT' is set, we will try to build anyway."; \ fi; ) touch $@ $(INST)/$(PATCH): +$(PIPE) "$(SAGE_SPKG) $(PATCH) 2>&1" "tee -a $(SAGE_LOGS)/$(PATCH).log" $(INST)/$(PKGCONF): $(INST)/$(PATCH) +$(PIPE) "$(SAGE_SPKG) $(PKGCONF) 2>&1" "tee -a $(SAGE_LOGS)/$(PKGCONF).log" $(INST)/$(BZIP2): $(INST)/prereq $(INST)/$(PKGCONF) +$(PIPE) "$(SAGE_SPKG) $(BZIP2) 2>&1" "tee -a $(SAGE_LOGS)/$(BZIP2).log" ############################################################################### # Building normal packages ############################################################################### $(INST)/$(ATLAS): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(ATLAS) 2>&1" "tee -a $(SAGE_LOGS)/$(ATLAS).log" $(INST)/$(BOEHM_GC): $(INST)/$(PKGCONF) +$(PIPE) "$(SAGE_SPKG) $(BOEHM_GC) 2>&1" "tee -a $(SAGE_LOGS)/$(BOEHM_GC).log" $(INST)/$(BOOST_CROPPED): +$(PIPE) "$(SAGE_SPKG) $(BOOST_CROPPED) 2>&1" "tee -a $(SAGE_LOGS)/$(BOOST_CROPPED).log" $(INST)/$(CLIQUER): +$(PIPE) "$(SAGE_SPKG) $(CLIQUER) 2>&1" "tee -a $(SAGE_LOGS)/$(CLIQUER).log" $(INST)/$(COMBINATORIAL_DESIGNS): +$(PIPE) "$(SAGE_SPKG) $(COMBINATORIAL_DESIGNS) 2>&1" "tee -a $(SAGE_LOGS)/$(COMBINATORIAL_DESIGNS).log" $(INST)/$(NCURSES): $(INST)/$(PKGCONF) +$(PIPE) "$(SAGE_SPKG) $(NCURSES) 2>&1" "tee -a $(SAGE_LOGS)/$(NCURSES).log" $(INST)/$(READLINE): $(INST)/$(NCURSES) +$(PIPE) "$(SAGE_SPKG) $(READLINE) 2>&1" "tee -a $(SAGE_LOGS)/$(READLINE).log" $(INST)/$(ICONV): +$(PIPE) "$(SAGE_SPKG) $(ICONV) 2>&1" "tee -a $(SAGE_LOGS)/$(ICONV).log" $(INST)/$(DOCUTILS): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(DOCUTILS) 2>&1" "tee -a $(SAGE_LOGS)/$(DOCUTILS).log" $(INST)/$(ELLIPTIC_CURVES): $(INST)/$(PYTHON) $(INST)/$(SQLITE) +$(PIPE) "$(SAGE_SPKG) $(ELLIPTIC_CURVES) 2>&1" "tee -a $(SAGE_LOGS)/$(ELLIPTIC_CURVES).log" # CONWAY depends on depends on SAGERUNTIME because it runs Sage code to # generate a Sage object (.sobj). $(INST)/$(CONWAY): $(SAGERUNTIME) +$(PIPE) "$(SAGE_SPKG) $(CONWAY) 2>&1" "tee -a $(SAGE_LOGS)/$(CONWAY).log" $(INST)/$(GRAPHS): +$(PIPE) "$(SAGE_SPKG) $(GRAPHS) 2>&1" "tee -a $(SAGE_LOGS)/$(GRAPHS).log" $(INST)/$(GLPK): $(INST)/$(MPIR) $(INST)/$(ZLIB) +$(PIPE) "$(SAGE_SPKG) $(GLPK) 2>&1" "tee -a $(SAGE_LOGS)/$(GLPK).log" $(INST)/$(PYTHON): $(INST)/$(ZLIB) $(INST)/$(BZIP2) $(INST)/$(PKGCONF) \ $(INST)/$(READLINE) $(INST)/$(SQLITE) $(INST)/$(LIBPNG) +$(PIPE) "$(SAGE_SPKG) $(PYTHON) 2>&1" "tee -a $(SAGE_LOGS)/$(PYTHON).log" $(INST)/$(MPIR): $(INST)/$(ICONV) +$(PIPE) "$(SAGE_SPKG) $(MPIR) 2>&1" "tee -a $(SAGE_LOGS)/$(MPIR).log" $(INST)/$(GSL): $(INST)/$(ATLAS) +$(PIPE) "$(SAGE_SPKG) $(GSL) 2>&1" "tee -a $(SAGE_LOGS)/$(GSL).log" $(INST)/$(GF2X): +$(PIPE) "$(SAGE_SPKG) $(GF2X) 2>&1" "tee -a $(SAGE_LOGS)/$(GF2X).log" $(INST)/$(NTL): $(INST)/$(MPIR) $(INST)/$(GF2X) +$(PIPE) "$(SAGE_SPKG) $(NTL) 2>&1" "tee -a $(SAGE_LOGS)/$(NTL).log" $(INST)/$(FPLLL): $(INST)/$(MPIR) $(INST)/$(MPFR) +$(PIPE) "$(SAGE_SPKG) $(FPLLL) 2>&1" "tee -a $(SAGE_LOGS)/$(FPLLL).log" $(INST)/$(PARI): $(INST)/$(READLINE) $(INST)/$(MPIR) \ $(INST)/$(PARI_GALDATA) $(INST)/$(PARI_SEADATA_SMALL) +$(PIPE) "$(SAGE_SPKG) $(PARI) 2>&1" "tee -a $(SAGE_LOGS)/$(PARI).log" $(INST)/$(PARI_GALDATA): +$(PIPE) "$(SAGE_SPKG) $(PARI_GALDATA) 2>&1" "tee -a $(SAGE_LOGS)/$(PARI_GALDATA).log" $(INST)/$(PARI_SEADATA_SMALL): +$(PIPE) "$(SAGE_SPKG) $(PARI_SEADATA_SMALL) 2>&1" "tee -a $(SAGE_LOGS)/$(PARI_SEADATA_SMALL).log" $(INST)/$(POLYBORI): $(INST)/$(PYTHON) $(INST)/$(IPYTHON) \ $(INST)/$(SCONS) $(INST)/$(BOOST_CROPPED) \ $(INST)/$(M4RI) $(INST)/$(GD) +$(PIPE) "$(SAGE_SPKG) $(POLYBORI) 2>&1" "tee -a $(SAGE_LOGS)/$(POLYBORI).log" $(INST)/$(POLYTOPES_DB): +$(PIPE) "$(SAGE_SPKG) $(POLYTOPES_DB) 2>&1" "tee -a $(SAGE_LOGS)/$(POLYTOPES_DB).log" $(INST)/$(PPL): $(INST)/$(MPIR) $(INST)/$(GLPK) +$(PIPE) "$(SAGE_SPKG) $(PPL) 2>&1" "tee -a $(SAGE_LOGS)/$(PPL).log" $(INST)/$(MPC): $(INST)/$(MPIR) $(INST)/$(MPFR) +$(PIPE) "$(SAGE_SPKG) $(MPC) 2>&1" "tee -a $(SAGE_LOGS)/$(MPC).log" $(INST)/$(MPFR): $(INST)/$(MPIR) +$(PIPE) "$(SAGE_SPKG) $(MPFR) 2>&1" "tee -a $(SAGE_LOGS)/$(MPFR).log" $(INST)/$(MPFI): $(INST)/$(MPIR) $(INST)/$(MPFR) +$(PIPE) "$(SAGE_SPKG) $(MPFI) 2>&1" "tee -a $(SAGE_LOGS)/$(MPFI).log" $(INST)/$(GIVARO): $(INST)/$(MPIR) +$(PIPE) "$(SAGE_SPKG) $(GIVARO) 2>&1" "tee -a $(SAGE_LOGS)/$(GIVARO).log" $(INST)/$(GIT): $(INST)/$(ZLIB) $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(GIT) 2>&1" "tee -a $(SAGE_LOGS)/$(GIT).log" $(INST)/$(FFLASFFPACK): $(INST)/$(MPIR) $(INST)/$(GIVARO) \ $(INST)/$(GSL) $(INST)/$(ATLAS) +$(PIPE) "$(SAGE_SPKG) $(FFLASFFPACK) 2>&1" "tee -a $(SAGE_LOGS)/$(FFLASFFPACK).log" $(INST)/$(LINBOX): $(INST)/$(MPIR) $(INST)/$(NTL) $(INST)/$(GIVARO) \ $(INST)/$(MPFR) $(INST)/$(FPLLL) $(INST)/$(IML) \ $(INST)/$(M4RI) $(INST)/$(M4RIE) $(INST)/$(FFLASFFPACK) +$(PIPE) "$(SAGE_SPKG) $(LINBOX) 2>&1" "tee -a $(SAGE_LOGS)/$(LINBOX).log" $(INST)/$(IML): $(INST)/$(MPIR) $(INST)/$(GSL) $(INST)/$(ATLAS) +$(PIPE) "$(SAGE_SPKG) $(IML) 2>&1" "tee -a $(SAGE_LOGS)/$(IML).log" $(INST)/$(PALP): +$(PIPE) "$(SAGE_SPKG) $(PALP) 2>&1" "tee -a $(SAGE_LOGS)/$(PALP).log" $(INST)/$(LCALC): $(INST)/$(PARI) $(INST)/$(MPFR) +$(PIPE) "$(SAGE_SPKG) $(LCALC) 2>&1" "tee -a $(SAGE_LOGS)/$(LCALC).log" $(INST)/$(LRCALC): +$(PIPE) "$(SAGE_SPKG) $(LRCALC) 2>&1" "tee -a $(SAGE_LOGS)/$(LRCALC).log" $(INST)/$(PYNAC): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(PYNAC) 2>&1" "tee -a $(SAGE_LOGS)/$(PYNAC).log" $(INST)/$(SYMPOW): +$(PIPE) "$(SAGE_SPKG) $(SYMPOW) 2>&1" "tee -a $(SAGE_LOGS)/$(SYMPOW).log" $(INST)/$(SYMMETRICA): +$(PIPE) "$(SAGE_SPKG) $(SYMMETRICA) 2>&1" "tee -a $(SAGE_LOGS)/$(SYMMETRICA).log" $(INST)/$(GAP): $(INST)/$(NCURSES) $(INST)/$(READLINE) $(INST)/$(MPIR) +$(PIPE) "$(SAGE_SPKG) $(GAP) 2>&1" "tee -a $(SAGE_LOGS)/$(GAP).log" $(INST)/$(LIBGAP): $(INST)/$(GAP) +$(PIPE) "$(SAGE_SPKG) $(LIBGAP) 2>&1" "tee -a $(SAGE_LOGS)/$(LIBGAP).log" $(INST)/$(IPYTHON): $(INST)/$(PYTHON) $(INST)/$(JINJA2) $(INST)/$(TORNADO) $(INST)/$(PYZMQ) +$(PIPE) "$(SAGE_SPKG) $(IPYTHON) 2>&1" "tee -a $(SAGE_LOGS)/$(IPYTHON).log" $(INST)/$(PEXPECT): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(PEXPECT) 2>&1" "tee -a $(SAGE_LOGS)/$(PEXPECT).log" $(INST)/$(GD): $(INST)/$(LIBPNG) $(INST)/$(FREETYPE) $(INST)/$(ICONV) +$(PIPE) "$(SAGE_SPKG) $(GD) 2>&1" "tee -a $(SAGE_LOGS)/$(GD).log" $(INST)/$(GDMODULE): $(INST)/$(PYTHON) $(INST)/$(GD) $(INST)/$(ICONV) +$(PIPE) "$(SAGE_SPKG) $(GDMODULE) 2>&1" "tee -a $(SAGE_LOGS)/$(GDMODULE).log" $(INST)/$(SCONS): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(SCONS) 2>&1" "tee -a $(SAGE_LOGS)/$(SCONS).log" $(INST)/$(RUBIKS): +$(PIPE) "$(SAGE_SPKG) $(RUBIKS) 2>&1" "tee -a $(SAGE_LOGS)/$(RUBIKS).log" $(INST)/$(SQLITE): $(INST)/$(READLINE) +$(PIPE) "$(SAGE_SPKG) $(SQLITE) 2>&1" "tee -a $(SAGE_LOGS)/$(SQLITE).log" # To build SageTeX, you just need Python, but to test (SAGE_CHECK=yes) # SageTeX, you actually need to run Sage, produce plots,... $(INST)/$(SAGETEX): $(INST)/$(PYTHON) \ $(SAGERUNTIME) $(INST)/$(MAXIMA) $(INST)/$(SCIPY) \ $(INST)/$(MATPLOTLIB) $(INST)/$(PILLOW) $(INST)/$(TACHYON) +$(PIPE) "$(SAGE_SPKG) $(SAGETEX) 2>&1" "tee -a $(SAGE_LOGS)/$(SAGETEX).log" $(INST)/$(SETUPTOOLS): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(SETUPTOOLS) 2>&1" "tee -a $(SAGE_LOGS)/$(SETUPTOOLS).log" $(INST)/$(SINGULAR): $(INST)/$(MPIR) $(INST)/$(NTL) $(INST)/$(FLINT) \ $(INST)/$(READLINE) $(INST)/$(MPFR) +$(PIPE) "$(SAGE_SPKG) $(SINGULAR) 2>&1" "tee -a $(SAGE_LOGS)/$(SINGULAR).log" $(INST)/$(PYCRYPTO): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(PYCRYPTO) 2>&1" "tee -a $(SAGE_LOGS)/$(PYCRYPTO).log" $(INST)/$(NETWORKX): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(NETWORKX) 2>&1" "tee -a $(SAGE_LOGS)/$(NETWORKX).log" $(INST)/$(MPMATH): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(MPMATH) 2>&1" "tee -a $(SAGE_LOGS)/$(MPMATH).log" $(INST)/$(ZEROMQ): +$(PIPE) "$(SAGE_SPKG) $(ZEROMQ) 2>&1" "tee -a $(SAGE_LOGS)/$(ZEROMQ).log" $(INST)/$(ZLIB): +$(PIPE) "$(SAGE_SPKG) $(ZLIB) 2>&1" "tee -a $(SAGE_LOGS)/$(ZLIB).log" $(INST)/$(JMOL): $(INST)/$(SAGENB) +$(PIPE) "$(SAGE_SPKG) $(JMOL) 2>&1" "tee -a $(SAGE_LOGS)/$(JMOL).log" $(INST)/$(FREETYPE): $(INST)/$(LIBPNG) +$(PIPE) "$(SAGE_SPKG) $(FREETYPE) 2>&1" "tee -a $(SAGE_LOGS)/$(FREETYPE).log" $(INST)/$(LIBPNG): $(INST)/$(ZLIB) +$(PIPE) "$(SAGE_SPKG) $(LIBPNG) 2>&1" "tee -a $(SAGE_LOGS)/$(LIBPNG).log" $(INST)/$(SIX): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(SIX) 2>&1" "tee -a $(SAGE_LOGS)/$(SIX).log" $(INST)/$(DATEUTIL): $(INST)/$(PYTHON) $(INST)/$(SIX) $(INST)/$(SETUPTOOLS) +$(PIPE) "$(SAGE_SPKG) $(DATEUTIL) 2>&1" "tee -a $(SAGE_LOGS)/$(DATEUTIL).log" $(INST)/$(PYPARSING): $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(PYPARSING) 2>&1" "tee -a $(SAGE_LOGS)/$(PYPARSING).log" $(INST)/$(PYZMQ): $(INST)/$(PYTHON) $(INST)/$(ZEROMQ) $(INST)/$(SETUPTOOLS) +$(PIPE) "$(SAGE_SPKG) $(PYZMQ) 2>&1" "tee -a $(SAGE_LOGS)/$(PYZMQ).log" $(INST)/$(TORNADO): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) +$(PIPE) "$(SAGE_SPKG) $(TORNADO) 2>&1" "tee -a $(SAGE_LOGS)/$(TORNADO).log" $(INST)/$(MATPLOTLIB): $(INST)/$(PYTHON) $(INST)/$(NUMPY) \ $(INST)/$(FREETYPE) $(INST)/$(LIBPNG) \ $(INST)/$(GDMODULE) $(INST)/$(DATEUTIL) \ $(INST)/$(PKGCONF) $(INST)/$(PYPARSING) \ $(INST)/$(SETUPTOOLS) $(INST)/$(TORNADO) $(INST)/$(SIX) +$(PIPE) "$(SAGE_SPKG) $(MATPLOTLIB) 2>&1" "tee -a $(SAGE_LOGS)/$(MATPLOTLIB).log" $(INST)/$(CDDLIB): $(INST)/$(MPIR) +$(PIPE) "$(SAGE_SPKG) $(CDDLIB) 2>&1" "tee -a $(SAGE_LOGS)/$(CDDLIB).log" $(INST)/$(GFAN): $(INST)/$(MPIR) $(INST)/$(CDDLIB) +$(PIPE) "$(SAGE_SPKG) $(GFAN) 2>&1" "tee -a $(SAGE_LOGS)/$(GFAN).log" $(INST)/$(TACHYON): $(INST)/$(LIBPNG) +$(PIPE) "$(SAGE_SPKG) $(TACHYON) 2>&1" "tee -a $(SAGE_LOGS)/$(TACHYON).log" $(INST)/$(ECM): $(INST)/$(MPIR) +$(PIPE) "$(SAGE_SPKG) $(ECM) 2>&1" "tee -a $(SAGE_LOGS)/$(ECM).log" $(INST)/$(RATPOINTS): $(INST)/$(MPIR) +$(PIPE) "$(SAGE_SPKG) $(RATPOINTS) 2>&1" "tee -a $(SAGE_LOGS)/$(RATPOINTS).log" $(INST)/$(ECL): $(INST)/$(MPIR) $(INST)/$(READLINE) $(INST)/$(BOEHM_GC) +$(PIPE) "$(SAGE_SPKG) $(ECL) 2>&1" "tee -a $(SAGE_LOGS)/$(ECL).log" $(INST)/$(MAXIMA): $(INST)/$(ECL) +$(PIPE) "$(SAGE_SPKG) $(MAXIMA) 2>&1" "tee -a $(SAGE_LOGS)/$(MAXIMA).log" $(INST)/$(R): $(INST)/$(ATLAS) $(INST)/$(ICONV) $(INST)/$(READLINE) $(INST)/$(PKGCONF) +$(PIPE) "$(SAGE_SPKG) $(R) 2>&1" "tee -a $(SAGE_LOGS)/$(R).log" $(INST)/$(RPY): $(INST)/$(PYTHON) $(INST)/$(R) +$(PIPE) "$(SAGE_SPKG) $(RPY) 2>&1" "tee -a $(SAGE_LOGS)/$(RPY).log" $(INST)/$(SYMPY): $(INST)/$(PYTHON) $(INST)/$(MPMATH) +$(PIPE) "$(SAGE_SPKG) $(SYMPY) 2>&1" "tee -a $(SAGE_LOGS)/$(SYMPY).log" $(INST)/$(CYTHON): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) +$(PIPE) "$(SAGE_SPKG) $(CYTHON) 2>&1" "tee -a $(SAGE_LOGS)/$(CYTHON).log" $(INST)/$(FLINTQS): $(INST)/$(MPIR) +$(PIPE) "$(SAGE_SPKG) $(FLINTQS) 2>&1" "tee -a $(SAGE_LOGS)/$(FLINTQS).log" $(INST)/$(FLINT): $(INST)/$(MPIR) $(INST)/$(MPFR) $(INST)/$(NTL) +$(PIPE) "$(SAGE_SPKG) $(FLINT) 2>&1" "tee -a $(SAGE_LOGS)/$(FLINT).log" $(INST)/$(ECLIB): $(INST)/$(PARI) $(INST)/$(NTL) $(INST)/$(FLINT) +$(PIPE) "$(SAGE_SPKG) $(ECLIB) 2>&1" "tee -a $(SAGE_LOGS)/$(ECLIB).log" $(INST)/$(M4RI): $(INST)/$(LIBPNG) $(INST)/$(PKGCONF) +$(PIPE) "$(SAGE_SPKG) $(M4RI) 2>&1" "tee -a $(SAGE_LOGS)/$(M4RI).log" $(INST)/$(M4RIE): $(INST)/$(M4RI) $(INST)/$(GIVARO) $(INST)/$(NTL) +$(PIPE) "$(SAGE_SPKG) $(M4RIE) 2>&1" "tee -a $(SAGE_LOGS)/$(M4RIE).log" # zn_poly really does depend on Python, despite this is far from obvious. # The 'configure' script in zn_poly calls Python to make a 'makefile'. $(INST)/$(ZNPOLY): $(INST)/$(MPIR) $(INST)/$(PYTHON) +$(PIPE) "$(SAGE_SPKG) $(ZNPOLY) 2>&1" "tee -a $(SAGE_LOGS)/$(ZNPOLY).log" $(INST)/$(SAGENB): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) $(INST)/$(PEXPECT) \ $(INST)/$(JINJA2) $(INST)/$(SPHINX) $(INST)/$(DOCUTILS) +$(PIPE) "$(SAGE_SPKG) $(SAGENB) 2>&1" "tee -a $(SAGE_LOGS)/$(SAGENB).log" $(INST)/$(SQLALCHEMY): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) +$(PIPE) "$(SAGE_SPKG) $(SQLALCHEMY) 2>&1" "tee -a $(SAGE_LOGS)/$(SQLALCHEMY).log" $(INST)/$(SPHINX): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) $(INST)/$(DOCUTILS) \ $(INST)/$(JINJA2) $(INST)/$(PYGMENTS) +$(PIPE) "$(SAGE_SPKG) $(SPHINX) 2>&1" "tee -a $(SAGE_LOGS)/$(SPHINX).log" $(INST)/$(JINJA2): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) $(INST)/$(DOCUTILS) +$(PIPE) "$(SAGE_SPKG) $(JINJA2) 2>&1" "tee -a $(SAGE_LOGS)/$(JINJA2).log" $(INST)/$(PYGMENTS): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) +$(PIPE) "$(SAGE_SPKG) $(PYGMENTS) 2>&1" "tee -a $(SAGE_LOGS)/$(PYGMENTS).log" # List all *build-time* dependencies of the Sage library. These are, # on the one hand, programs needed for the build/install process of the # Sage library (e.g. JINJA2), and on the # other hand all dependencies for Cython files (e.g. PARI, NTL, MPIR). $(INST)/sage: \ $(INST)/$(ATLAS) \ $(INST)/$(CEPHES) \ $(INST)/$(CLIQUER) \ $(INST)/$(CYTHON) \ $(INST)/$(ECL) \ $(INST)/$(ECLIB) \ $(INST)/$(ECM) \ $(INST)/$(FLINT) \ $(INST)/$(FPLLL) \ $(INST)/$(GD) \ $(INST)/$(GIVARO) \ $(INST)/$(GLPK) \ $(INST)/$(GSL) \ $(INST)/$(IML) \ $(INST)/$(JINJA2) \ $(INST)/$(LCALC) \ $(INST)/$(LRCALC) \ $(INST)/$(LIBGAP) \ $(INST)/$(LIBPNG) \ $(INST)/$(LINBOX) \ $(INST)/$(M4RI) \ $(INST)/$(M4RIE) \ $(INST)/$(MPC) \ $(INST)/$(MPFI) \ $(INST)/$(MPFR) \ $(INST)/$(MPIR) \ $(INST)/$(NTL) \ $(INST)/$(NUMPY) \ $(INST)/$(PARI) \ $(INST)/$(POLYBORI) \ $(INST)/$(PPL) \ $(INST)/$(PYNAC) \ $(INST)/$(PYTHON) \ $(INST)/$(RATPOINTS) \ $(INST)/$(READLINE) \ $(INST)/$(SINGULAR) \ $(INST)/$(SYMMETRICA) \ $(INST)/$(ZNPOLY) \ $(INST)/csage if [ -z "$$SAGE_INSTALL_FETCH_ONLY" ]; then \ cd $(SAGE_SRC) && source bin/sage-env && \ $(PIPE) 'time python setup.py install 2>&1' 'tee -a $(SAGE_LOGS)/sage-$(SAGE_VERSION).log' && \ touch $@; \ fi $(INST)/csage: $(INST)/$(SCONS) \ $(INST)/$(MPIR) \ $(INST)/$(NTL) \ $(INST)/$(PARI) \ $(INST)/$(PYTHON) if [ -z "$$SAGE_INSTALL_FETCH_ONLY" ]; then \ cd $(SAGE_SRC) && source bin/sage-env && cd c_lib && \ $(PIPE) 'time scons -Q install 2>&1' 'tee -a $(SAGE_LOGS)/csage-$(SAGE_VERSION).log' && \ touch $@; \ fi $(INST)/ccache: $(BASE) $(INST)/$(ZLIB) +$(PIPE) "$(SAGE_SPKG) ccache 2>&1" "tee -a $(SAGE_LOGS)/ccache.log" touch $(INST)/ccache $(INST)/$(GCC): $(INST)/$(MPIR) $(INST)/$(MPFR) $(INST)/$(MPC) \ $(INST)/$(ZLIB) +$(PIPE) "$(SAGE_SPKG) $(GCC) 2>&1" "tee -a $(SAGE_LOGS)/$(GCC).log" $(INST)/$(PILLOW): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) +$(PIPE) "$(SAGE_SPKG) $(PILLOW) 2>&1" "tee -a $(SAGE_LOGS)/$(PILLOW).log" $(INST)/$(PKGCONFIG): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) +$(PIPE) "$(SAGE_SPKG) $(PKGCONFIG) 2>&1" "tee -a $(SAGE_LOGS)/$(PKGCONFIG).log" $(INST)/$(NUMPY): $(INST)/$(PYTHON) $(INST)/$(ATLAS) $(INST)/$(PKGCONF) +$(PIPE) "$(SAGE_SPKG) $(NUMPY) 2>&1" "tee -a $(SAGE_LOGS)/$(NUMPY).log" $(INST)/$(SCIPY): $(INST)/$(ATLAS) $(INST)/$(NUMPY) +$(PIPE) "$(SAGE_SPKG) $(SCIPY) 2>&1" "tee -a $(SAGE_LOGS)/$(SCIPY).log" # matplotlib is needed to test cvxopt (i.e., if SAGE_CHECK=yes). See #12742. $(INST)/$(CVXOPT): $(INST)/$(NUMPY) \ $(INST)/$(ATLAS) $(INST)/$(CEPHES) \ $(INST)/$(GSL) $(INST)/$(GLPK) $(INST)/$(MATPLOTLIB) +$(PIPE) "$(SAGE_SPKG) $(CVXOPT) 2>&1" "tee -a $(SAGE_LOGS)/$(CVXOPT).log" $(INST)/$(CEPHES): +$(PIPE) "$(SAGE_SPKG) $(CEPHES) 2>&1" "tee -a $(SAGE_LOGS)/$(CEPHES).log" Regards Paweł W dniu środa, 31 grudnia 2014 15:35:47 UTC+1 użytkownik Paweł Bogdan napisał: > > Dima! > > uname -a > Linux iota 2.6.38.8 #7 SMP Sat Aug 2 23:41:34 CEST 2014 x86_64 > Quad-Core_AMD_Opteron(tm)_Processor_8350 PLD Linux > > Volker! > You are right, there are such line. Find Makefile attached to this message. > I can ask admin of the server to fix the date. > > If you say that building sage locally is the best solution I can do it. > But can you explain how should I build sage locally that it will fit to the > server? > > Thanks for remarks. > Best regards > Paweł > > W dniu środa, 31 grudnia 2014 11:47:09 UTC+1 użytkownik Volker Braun > napisał: >> >> We run "./configure $$PREREQ_OPTIONS" in build/install so that must be >> where the "x make" came from. But I'm a bit confused how that is possible. >> According to the log he hasn't set PREREQ_OPTIONS. >> >> Pawel, can you post your build/Makefile? This should include the make >> target: >> >> $(INST)/prereq: ../configure >> @cd ..; rm -f config.log; ln -s logs/pkgs/config.log config.log; \ >> ./configure $$PREREQ_OPTIONS || ( \ >> if [ "x$$SAGE_PORT" = x ]; then \ >> echo "If you would like to try to build Sage anyway (to >> help porting),"; \ >> echo "export the variable 'SAGE_PORT' to something >> non-empty."; \ >> exit 1; \ >> else \ >> echo "Since 'SAGE_PORT' is set, we will try to build >> anyway."; \ >> fi; ) >> touch $@ >> >> Also, the "Warning: File `Makefile' has modification time 1.5 s in the >> future" means that you are on a network file system where the file server >> clock is out of sync. This is a serious problem, you should ask your admin >> to fix it. Ideally build Sage on a local file system (/scratch or so). >> >> >> On Tuesday, December 30, 2014 10:39:23 PM UTC+1, Paweł Bogdan wrote: >>> >>> I don't know that neither. I followed instruction from >>> http://www.sagemath.org/doc/installation/source.html#step-by-step-installation-procedure. >>> >>> I didn't run any ./configure script. I run only make to get logs I attached >>> earlier. Are those steps are wrong? Should I run ./configure before make? >>> What arguments should I use? >>> >>> Best regards >>> Paweł >>> >>> W dniu wtorek, 30 grudnia 2014 20:46:59 UTC+1 użytkownik Jeroen Demeyer >>> napisał: >>>> >>>> You config.log seems to indicate that you did run >>>> ./configure x make >>>> which will obviously lead to problems. >>>> >>>> If you didn't run this, I don't know where these bogus arguments >>>> "x make" came from... >>>> >>> -- You received this message because you are subscribed to the Google Groups "sage-support" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-support+unsubscr...@googlegroups.com. To post to this group, send email to sage-support@googlegroups.com. Visit this group at http://groups.google.com/group/sage-support. For more options, visit https://groups.google.com/d/optout.