| 1 | INST = installed |
|---|
| 2 | SAGE_SPKG = sage-spkg |
|---|
| 3 | INSTALL = $(SAGE_ROOT)/spkg/pipestatus |
|---|
| 4 | |
|---|
| 5 | ######################################## |
|---|
| 6 | # The base system; required in order to run sage-spkg |
|---|
| 7 | ######################################## |
|---|
| 8 | BASE = $(INST)/$(PREREQ) $(INST)/$(DIR) $(INST)/$(SAGE_BZIP2) |
|---|
| 9 | |
|---|
| 10 | # Also install scripts before we continue with other spkgs |
|---|
| 11 | BASE += $(INST)/$(SAGE_SCRIPTS) |
|---|
| 12 | |
|---|
| 13 | # Tell make not to look for files with these (base)names: |
|---|
| 14 | .PHONY: all base scripts |
|---|
| 15 | |
|---|
| 16 | # Targets |
|---|
| 17 | all: $(BASE) \ |
|---|
| 18 | $(INST)/$(ATLAS) \ |
|---|
| 19 | $(INST)/$(BLAS) \ |
|---|
| 20 | $(INST)/$(BOEHM_GC) \ |
|---|
| 21 | $(INST)/$(BOOST_CROPPED) \ |
|---|
| 22 | $(INST)/$(CDDLIB) \ |
|---|
| 23 | $(INST)/$(CEPHES) \ |
|---|
| 24 | $(INST)/$(CLIQUER) \ |
|---|
| 25 | $(INST)/$(CONWAY) \ |
|---|
| 26 | $(INST)/$(CVXOPT) \ |
|---|
| 27 | $(INST)/$(CYTHON) \ |
|---|
| 28 | $(INST)/$(DOCUTILS) \ |
|---|
| 29 | $(INST)/$(ECL) \ |
|---|
| 30 | $(INST)/$(ECLIB) \ |
|---|
| 31 | $(INST)/$(ECM) \ |
|---|
| 32 | $(INST)/$(ELLIPTIC_CURVES) \ |
|---|
| 33 | $(INST)/$(EXAMPLES) \ |
|---|
| 34 | $(INST)/$(EXTCODE) \ |
|---|
| 35 | $(INST)/$(F2C) \ |
|---|
| 36 | $(INST)/$(FLINT) \ |
|---|
| 37 | $(INST)/$(FLINTQS) \ |
|---|
| 38 | $(INST)/$(FORTRAN) \ |
|---|
| 39 | $(INST)/$(FPLLL) \ |
|---|
| 40 | $(INST)/$(FREETYPE) \ |
|---|
| 41 | $(INST)/$(G2RED) \ |
|---|
| 42 | $(INST)/$(GAP) \ |
|---|
| 43 | $(INST)/$(GD) \ |
|---|
| 44 | $(INST)/$(GDMODULE) \ |
|---|
| 45 | $(INST)/$(GFAN) \ |
|---|
| 46 | $(INST)/$(GIVARO) \ |
|---|
| 47 | $(INST)/$(GLPK) \ |
|---|
| 48 | $(INST)/$(GNUTLS) \ |
|---|
| 49 | $(INST)/$(GRAPHS) \ |
|---|
| 50 | $(INST)/$(GSL) \ |
|---|
| 51 | $(INST)/$(ICONV) \ |
|---|
| 52 | $(INST)/$(IML) \ |
|---|
| 53 | $(INST)/$(IPYTHON) \ |
|---|
| 54 | $(INST)/$(JINJA) \ |
|---|
| 55 | $(INST)/$(JINJA2) \ |
|---|
| 56 | $(INST)/$(LAPACK) \ |
|---|
| 57 | $(INST)/$(LCALC) \ |
|---|
| 58 | $(INST)/$(LIBGCRYPT) \ |
|---|
| 59 | $(INST)/$(LIBGPG_ERROR) \ |
|---|
| 60 | $(INST)/$(LIBM4RI) \ |
|---|
| 61 | $(INST)/$(LIBPNG) \ |
|---|
| 62 | $(INST)/$(LINBOX) \ |
|---|
| 63 | $(INST)/$(MATPLOTLIB) \ |
|---|
| 64 | $(INST)/$(MAXIMA) \ |
|---|
| 65 | $(INST)/$(MERCURIAL) \ |
|---|
| 66 | $(INST)/$(MOIN) \ |
|---|
| 67 | $(INST)/$(MPFI) \ |
|---|
| 68 | $(INST)/$(MPFR) \ |
|---|
| 69 | $(INST)/$(MPIR) \ |
|---|
| 70 | $(INST)/$(MPMATH) \ |
|---|
| 71 | $(INST)/$(NETWORKX) \ |
|---|
| 72 | $(INST)/$(NTL) \ |
|---|
| 73 | $(INST)/$(NUMPY) \ |
|---|
| 74 | $(INST)/$(OPENCDK) \ |
|---|
| 75 | $(INST)/$(PALP) \ |
|---|
| 76 | $(INST)/$(PARI) \ |
|---|
| 77 | $(INST)/$(PEXPECT) \ |
|---|
| 78 | $(INST)/$(PIL) \ |
|---|
| 79 | $(INST)/$(POLYBORI) \ |
|---|
| 80 | $(INST)/$(POLYTOPES_DB) \ |
|---|
| 81 | $(INST)/$(PYCRYPTO) \ |
|---|
| 82 | $(INST)/$(PYGMENTS) \ |
|---|
| 83 | $(INST)/$(PYNAC) \ |
|---|
| 84 | $(INST)/$(PYTHON) \ |
|---|
| 85 | $(INST)/$(PYTHON_GNUTLS) \ |
|---|
| 86 | $(INST)/$(RATPOINTS) \ |
|---|
| 87 | $(INST)/$(R) \ |
|---|
| 88 | $(INST)/$(READLINE) \ |
|---|
| 89 | $(INST)/$(RUBIKS) \ |
|---|
| 90 | $(INST)/$(SAGE) \ |
|---|
| 91 | $(INST)/$(SAGE_SCRIPTS) \ |
|---|
| 92 | $(INST)/$(SAGENB) \ |
|---|
| 93 | $(INST)/$(SAGETEX) \ |
|---|
| 94 | $(INST)/$(SCIPY) \ |
|---|
| 95 | $(INST)/$(SCIPY_SANDBOX) \ |
|---|
| 96 | $(INST)/$(SCONS) \ |
|---|
| 97 | $(INST)/$(SETUPTOOLS) \ |
|---|
| 98 | $(INST)/$(SINGULAR) \ |
|---|
| 99 | $(INST)/$(SPHINX) \ |
|---|
| 100 | $(INST)/$(SQLALCHEMY) \ |
|---|
| 101 | $(INST)/$(SQLITE) \ |
|---|
| 102 | $(INST)/$(SYMMETRICA) \ |
|---|
| 103 | $(INST)/$(SYMPOW) \ |
|---|
| 104 | $(INST)/$(SYMPY) \ |
|---|
| 105 | $(INST)/$(TACHYON) \ |
|---|
| 106 | $(INST)/$(TERMCAP) \ |
|---|
| 107 | $(INST)/$(TWISTED) \ |
|---|
| 108 | $(INST)/$(WEAVE) \ |
|---|
| 109 | $(INST)/$(ZLIB) \ |
|---|
| 110 | $(INST)/$(ZNPOLY) \ |
|---|
| 111 | $(INST)/$(ZODB) |
|---|
| 112 | |
|---|
| 113 | base: $(BASE) |
|---|
| 114 | |
|---|
| 115 | scripts: $(BASE) |
|---|
| 116 | |
|---|
| 117 | ######################################## |
|---|
| 118 | # Building the base system |
|---|
| 119 | ######################################## |
|---|
| 120 | $(INST)/$(DIR): |
|---|
| 121 | $(INSTALL) "base/$(DIR)-install 2>&1" "tee -a $(SAGE_LOGS)/$(DIR).log" |
|---|
| 122 | |
|---|
| 123 | $(INST)/$(PREREQ): $(INST)/$(DIR) |
|---|
| 124 | $(INSTALL) "base/$(PREREQ)-install 2>&1" "tee -a $(SAGE_LOGS)/$(PREREQ).log" |
|---|
| 125 | |
|---|
| 126 | $(INST)/$(SAGE_BZIP2): $(INST)/$(PREREQ) $(INST)/$(DIR) |
|---|
| 127 | $(INSTALL) "base/$(SAGE_BZIP2)-install 2>&1" "tee -a $(SAGE_LOGS)/$(SAGE_BZIP2).log" |
|---|
| 128 | |
|---|
| 129 | $(INST)/$(SAGE_SCRIPTS): $(INST)/$(SAGE_BZIP2) $(INST)/$(PREREQ) \ |
|---|
| 130 | $(INST)/$(DIR) |
|---|
| 131 | $(INSTALL) "$(SAGE_SPKG) $(SAGE_SCRIPTS) 2>&1" "tee -a $(SAGE_LOGS)/$(SAGE_SCRIPTS).log" |
|---|
| 132 | |
|---|
| 133 | ######################################## |
|---|
| 134 | # Building normal packages |
|---|
| 135 | ######################################## |
|---|
| 136 | $(INST)/$(ATLAS): $(BASE) $(INST)/$(LAPACK) $(INST)/$(PYTHON) |
|---|
| 137 | $(INSTALL) "$(SAGE_SPKG) $(ATLAS) 2>&1" "tee -a $(SAGE_LOGS)/$(ATLAS).log" |
|---|
| 138 | |
|---|
| 139 | $(INST)/$(BOEHM_GC): $(BASE) |
|---|
| 140 | $(INSTALL) "$(SAGE_SPKG) $(BOEHM_GC) 2>&1" "tee -a $(SAGE_LOGS)/$(BOEHM_GC).log" |
|---|
| 141 | |
|---|
| 142 | $(INST)/$(BOOST_CROPPED): $(BASE) |
|---|
| 143 | $(INSTALL) "$(SAGE_SPKG) $(BOOST_CROPPED) 2>&1" "tee -a $(SAGE_LOGS)/$(BOOST_CROPPED).log" |
|---|
| 144 | |
|---|
| 145 | $(INST)/$(CLIQUER): $(BASE) $(INST)/$(SCONS) |
|---|
| 146 | $(INSTALL) "$(SAGE_SPKG) $(CLIQUER) 2>&1" "tee -a $(SAGE_LOGS)/$(CLIQUER).log" |
|---|
| 147 | |
|---|
| 148 | $(INST)/$(TERMCAP): $(BASE) |
|---|
| 149 | $(INSTALL) "$(SAGE_SPKG) $(TERMCAP) 2>&1" "tee -a $(SAGE_LOGS)/$(TERMCAP).log" |
|---|
| 150 | |
|---|
| 151 | $(INST)/$(READLINE): $(BASE) |
|---|
| 152 | $(INSTALL) "$(SAGE_SPKG) $(READLINE) 2>&1" "tee -a $(SAGE_LOGS)/$(READLINE).log" |
|---|
| 153 | |
|---|
| 154 | $(INST)/$(ICONV): $(BASE) |
|---|
| 155 | $(INSTALL) "$(SAGE_SPKG) $(ICONV) 2>&1" "tee -a $(SAGE_LOGS)/$(ICONV).log" |
|---|
| 156 | |
|---|
| 157 | $(INST)/$(DOCUTILS): $(BASE) $(INST)/$(PYTHON) |
|---|
| 158 | $(INSTALL) "$(SAGE_SPKG) $(DOCUTILS) 2>&1" "tee -a $(SAGE_LOGS)/$(DOCUTILS).log" |
|---|
| 159 | |
|---|
| 160 | $(INST)/$(ELLIPTIC_CURVES): $(BASE) |
|---|
| 161 | $(INSTALL) "$(SAGE_SPKG) $(ELLIPTIC_CURVES) 2>&1" "tee -a $(SAGE_LOGS)/$(ELLIPTIC_CURVES).log" |
|---|
| 162 | |
|---|
| 163 | $(INST)/$(CONWAY): $(BASE) |
|---|
| 164 | $(INSTALL) "$(SAGE_SPKG) $(CONWAY) 2>&1" "tee -a $(SAGE_LOGS)/$(CONWAY).log" |
|---|
| 165 | |
|---|
| 166 | $(INST)/$(GRAPHS): $(BASE) |
|---|
| 167 | $(INSTALL) "$(SAGE_SPKG) $(GRAPHS) 2>&1" "tee -a $(SAGE_LOGS)/$(GRAPHS).log" |
|---|
| 168 | |
|---|
| 169 | $(INST)/$(GLPK): $(BASE) $(INST)/$(MPIR) $(INST)/$(ZLIB) |
|---|
| 170 | $(INSTALL) "$(SAGE_SPKG) $(GLPK) 2>&1" "tee -a $(SAGE_LOGS)/$(GLPK).log" |
|---|
| 171 | |
|---|
| 172 | $(INST)/$(PYTHON): $(BASE) $(INST)/$(ZLIB) $(INST)/$(TERMCAP) \ |
|---|
| 173 | $(INST)/$(READLINE) $(INST)/$(SQLITE) \ |
|---|
| 174 | $(INST)/$(GNUTLS) $(INST)/$(LIBPNG) |
|---|
| 175 | $(INSTALL) "$(SAGE_SPKG) $(PYTHON) 2>&1" "tee -a $(SAGE_LOGS)/$(PYTHON).log" |
|---|
| 176 | |
|---|
| 177 | $(INST)/$(MPIR): $(BASE) $(INST)/$(ICONV) |
|---|
| 178 | $(INSTALL) "$(SAGE_SPKG) $(MPIR) 2>&1" "tee -a $(SAGE_LOGS)/$(MPIR).log" |
|---|
| 179 | |
|---|
| 180 | $(INST)/$(GSL): $(BASE) $(INST)/$(ATLAS) |
|---|
| 181 | $(INSTALL) "$(SAGE_SPKG) $(GSL) 2>&1" "tee -a $(SAGE_LOGS)/$(GSL).log" |
|---|
| 182 | |
|---|
| 183 | $(INST)/$(NTL): $(BASE) $(INST)/$(MPIR) |
|---|
| 184 | $(INSTALL) "$(SAGE_SPKG) $(NTL) 2>&1" "tee -a $(SAGE_LOGS)/$(NTL).log" |
|---|
| 185 | |
|---|
| 186 | $(INST)/$(FPLLL): $(BASE) $(INST)/$(MPIR) $(INST)/$(MPFR) |
|---|
| 187 | $(INSTALL) "$(SAGE_SPKG) $(FPLLL) 2>&1" "tee -a $(SAGE_LOGS)/$(FPLLL).log" |
|---|
| 188 | |
|---|
| 189 | $(INST)/$(PARI): $(BASE) $(INST)/$(TERMCAP) $(INST)/$(READLINE) \ |
|---|
| 190 | $(INST)/$(MPIR) |
|---|
| 191 | $(INSTALL) "$(SAGE_SPKG) $(PARI) 2>&1" "tee -a $(SAGE_LOGS)/$(PARI).log" |
|---|
| 192 | |
|---|
| 193 | $(INST)/$(POLYBORI): $(BASE) $(INST)/$(PYTHON) $(INST)/$(SCONS) \ |
|---|
| 194 | $(INST)/$(BOOST_CROPPED) $(INST)/$(LIBM4RI) |
|---|
| 195 | $(INSTALL) "$(SAGE_SPKG) $(POLYBORI) 2>&1" "tee -a $(SAGE_LOGS)/$(POLYBORI).log" |
|---|
| 196 | |
|---|
| 197 | $(INST)/$(POLYTOPES_DB): $(BASE) |
|---|
| 198 | $(INSTALL) "$(SAGE_SPKG) $(POLYTOPES_DB) 2>&1" "tee -a $(SAGE_LOGS)/$(POLYTOPES_DB).log" |
|---|
| 199 | |
|---|
| 200 | $(INST)/$(MPFR): $(BASE) $(INST)/$(MPIR) |
|---|
| 201 | $(INSTALL) "$(SAGE_SPKG) $(MPFR) 2>&1" "tee -a $(SAGE_LOGS)/$(MPFR).log" |
|---|
| 202 | |
|---|
| 203 | $(INST)/$(MPFI): $(BASE) $(INST)/$(MPIR) $(INST)/$(MPFR) |
|---|
| 204 | $(INSTALL) "$(SAGE_SPKG) $(MPFI) 2>&1" "tee -a $(SAGE_LOGS)/$(MPFI).log" |
|---|
| 205 | |
|---|
| 206 | $(INST)/$(GIVARO): $(BASE) $(INST)/$(MPIR) |
|---|
| 207 | $(INSTALL) "$(SAGE_SPKG) $(GIVARO) 2>&1" "tee -a $(SAGE_LOGS)/$(GIVARO).log" |
|---|
| 208 | |
|---|
| 209 | $(INST)/$(LINBOX): $(BASE) $(INST)/$(MPIR) $(INST)/$(NTL) $(INST)/$(GIVARO) \ |
|---|
| 210 | $(INST)/$(GSL) $(INST)/$(ATLAS) |
|---|
| 211 | $(INSTALL) "$(SAGE_SPKG) $(LINBOX) 2>&1" "tee -a $(SAGE_LOGS)/$(LINBOX).log" |
|---|
| 212 | |
|---|
| 213 | $(INST)/$(IML): $(BASE) $(INST)/$(MPIR) $(INST)/$(GSL) |
|---|
| 214 | $(INSTALL) "$(SAGE_SPKG) $(IML) 2>&1" "tee -a $(SAGE_LOGS)/$(IML).log" |
|---|
| 215 | |
|---|
| 216 | $(INST)/$(ECLIB): $(BASE) $(INST)/$(MPIR) $(INST)/$(PARI) $(INST)/$(NTL) |
|---|
| 217 | $(INSTALL) "$(SAGE_SPKG) $(ECLIB) 2>&1" "tee -a $(SAGE_LOGS)/$(ECLIB).log" |
|---|
| 218 | |
|---|
| 219 | $(INST)/$(G2RED): $(BASE) $(INST)/$(PARI) |
|---|
| 220 | $(INSTALL) "$(SAGE_SPKG) $(G2RED) 2>&1" "tee -a $(SAGE_LOGS)/$(G2RED).log" |
|---|
| 221 | |
|---|
| 222 | $(INST)/$(PALP): $(BASE) |
|---|
| 223 | $(INSTALL) "$(SAGE_SPKG) $(PALP) 2>&1" "tee -a $(SAGE_LOGS)/$(PALP).log" |
|---|
| 224 | |
|---|
| 225 | $(INST)/$(LCALC): $(BASE) $(INST)/$(PARI) $(INST)/$(MPFR) |
|---|
| 226 | $(INSTALL) "$(SAGE_SPKG) $(LCALC) 2>&1" "tee -a $(SAGE_LOGS)/$(LCALC).log" |
|---|
| 227 | |
|---|
| 228 | $(INST)/$(PYNAC): $(BASE) $(INST)/$(PYTHON) |
|---|
| 229 | $(INSTALL) "$(SAGE_SPKG) $(PYNAC) 2>&1" "tee -a $(SAGE_LOGS)/$(PYNAC).log" |
|---|
| 230 | |
|---|
| 231 | $(INST)/$(SYMPOW): $(BASE) |
|---|
| 232 | $(INSTALL) "$(SAGE_SPKG) $(SYMPOW) 2>&1" "tee -a $(SAGE_LOGS)/$(SYMPOW).log" |
|---|
| 233 | |
|---|
| 234 | $(INST)/$(SYMMETRICA): $(BASE) |
|---|
| 235 | $(INSTALL) "$(SAGE_SPKG) $(SYMMETRICA) 2>&1" "tee -a $(SAGE_LOGS)/$(SYMMETRICA).log" |
|---|
| 236 | |
|---|
| 237 | # gap requires SAGE so that gap_reset_workspace works. |
|---|
| 238 | $(INST)/$(GAP): $(BASE) $(INST)/$(TERMCAP) $(INST)/$(READLINE) $(INST)/$(SAGE) |
|---|
| 239 | $(INSTALL) "$(SAGE_SPKG) $(GAP) 2>&1" "tee -a $(SAGE_LOGS)/$(GAP).log" |
|---|
| 240 | |
|---|
| 241 | $(INST)/$(IPYTHON): $(BASE) $(INST)/$(PYTHON) |
|---|
| 242 | $(INSTALL) "$(SAGE_SPKG) $(IPYTHON) 2>&1" "tee -a $(SAGE_LOGS)/$(IPYTHON).log" |
|---|
| 243 | |
|---|
| 244 | $(INST)/$(PEXPECT): $(BASE) $(INST)/$(PYTHON) |
|---|
| 245 | $(INSTALL) "$(SAGE_SPKG) $(PEXPECT) 2>&1" "tee -a $(SAGE_LOGS)/$(PEXPECT).log" |
|---|
| 246 | |
|---|
| 247 | $(INST)/$(GD): $(BASE) $(INST)/$(LIBPNG) $(INST)/$(FREETYPE) $(INST)/$(ICONV) |
|---|
| 248 | $(INSTALL) "$(SAGE_SPKG) $(GD) 2>&1" "tee -a $(SAGE_LOGS)/$(GD).log" |
|---|
| 249 | |
|---|
| 250 | $(INST)/$(GDMODULE): $(BASE) $(INST)/$(PYTHON) $(INST)/$(GD) $(INST)/$(ICONV) |
|---|
| 251 | $(INSTALL) "$(SAGE_SPKG) $(GDMODULE) 2>&1" "tee -a $(SAGE_LOGS)/$(GDMODULE).log" |
|---|
| 252 | |
|---|
| 253 | $(INST)/$(OPENCDK): $(BASE) $(INST)/$(ZLIB) $(INST)/$(LIBGCRYPT) |
|---|
| 254 | $(INSTALL) "$(SAGE_SPKG) $(OPENCDK) 2>&1" "tee -a $(SAGE_LOGS)/$(OPENCDK).log" |
|---|
| 255 | |
|---|
| 256 | $(INST)/$(LIBGPG_ERROR): $(BASE) $(INST)/$(ICONV) |
|---|
| 257 | $(INSTALL) "$(SAGE_SPKG) $(LIBGPG_ERROR) 2>&1" "tee -a $(SAGE_LOGS)/$(LIBGPG_ERROR).log" |
|---|
| 258 | |
|---|
| 259 | $(INST)/$(LIBGCRYPT): $(BASE) $(INST)/$(LIBGPG_ERROR) |
|---|
| 260 | $(INSTALL) "$(SAGE_SPKG) $(LIBGCRYPT) 2>&1" "tee -a $(SAGE_LOGS)/$(LIBGCRYPT).log" |
|---|
| 261 | |
|---|
| 262 | $(INST)/$(GNUTLS): $(BASE) $(INST)/$(ZLIB) $(INST)/$(OPENCDK) \ |
|---|
| 263 | $(INST)/$(LIBGCRYPT) $(INST)/$(LIBGPG_ERROR) |
|---|
| 264 | $(INSTALL) "$(SAGE_SPKG) $(GNUTLS) 2>&1" "tee -a $(SAGE_LOGS)/$(GNUTLS).log" |
|---|
| 265 | |
|---|
| 266 | $(INST)/$(PYTHON_GNUTLS): $(BASE) $(INST)/$(GNUTLS) $(INST)/$(PYTHON) |
|---|
| 267 | $(INSTALL) "$(SAGE_SPKG) $(PYTHON_GNUTLS) 2>&1" "tee -a $(SAGE_LOGS)/$(PYTHON_GNUTLS).log" |
|---|
| 268 | |
|---|
| 269 | $(INST)/$(SCONS): $(BASE) $(INST)/$(PYTHON) |
|---|
| 270 | $(INSTALL) "$(SAGE_SPKG) $(SCONS) 2>&1" "tee -a $(SAGE_LOGS)/$(SCONS).log" |
|---|
| 271 | |
|---|
| 272 | $(INST)/$(RUBIKS): $(BASE) |
|---|
| 273 | $(INSTALL) "$(SAGE_SPKG) $(RUBIKS) 2>&1" "tee -a $(SAGE_LOGS)/$(RUBIKS).log" |
|---|
| 274 | |
|---|
| 275 | # extcode must be built before moin moin because it has jsmath in it. |
|---|
| 276 | $(INST)/$(MOIN): $(BASE) $(INST)/$(PYTHON) $(INST)/$(EXTCODE) \ |
|---|
| 277 | $(INST)/$(SAGENB) |
|---|
| 278 | $(INSTALL) "$(SAGE_SPKG) $(MOIN) 2>&1" "tee -a $(SAGE_LOGS)/$(MOIN).log" |
|---|
| 279 | |
|---|
| 280 | $(INST)/$(SQLITE): $(BASE) $(INST)/$(TERMCAP) $(INST)/$(READLINE) |
|---|
| 281 | $(INSTALL) "$(SAGE_SPKG) $(SQLITE) 2>&1" "tee -a $(SAGE_LOGS)/$(SQLITE).log" |
|---|
| 282 | |
|---|
| 283 | $(INST)/$(MERCURIAL): $(BASE) $(INST)/$(PYTHON) |
|---|
| 284 | $(INSTALL) "$(SAGE_SPKG) $(MERCURIAL) 2>&1" "tee -a $(SAGE_LOGS)/$(MERCURIAL).log" |
|---|
| 285 | |
|---|
| 286 | # make Sage and gap prerequisites for sagetex so that as much of Sage |
|---|
| 287 | # is installed as possible: this is so that spkg-check works for |
|---|
| 288 | # sagetex. (To build sagetex, you just need python, but to test it, |
|---|
| 289 | # you need a full Sage installation.) |
|---|
| 290 | $(INST)/$(SAGETEX): $(BASE) $(INST)/$(PYTHON) $(INST)/$(SAGE) $(INST)/$(GAP) |
|---|
| 291 | $(INSTALL) "$(SAGE_SPKG) $(SAGETEX) 2>&1" "tee -a $(SAGE_LOGS)/$(SAGETEX).log" |
|---|
| 292 | |
|---|
| 293 | $(INST)/$(SETUPTOOLS): $(BASE) $(INST)/$(PYTHON) |
|---|
| 294 | $(INSTALL) "$(SAGE_SPKG) $(SETUPTOOLS) 2>&1" "tee -a $(SAGE_LOGS)/$(SETUPTOOLS).log" |
|---|
| 295 | |
|---|
| 296 | $(INST)/$(SINGULAR): $(BASE) $(INST)/$(MPIR) $(INST)/$(NTL) \ |
|---|
| 297 | $(INST)/$(TERMCAP) $(INST)/$(READLINE) $(INST)/$(MPFR) |
|---|
| 298 | $(INSTALL) "$(SAGE_SPKG) $(SINGULAR) 2>&1" "tee -a $(SAGE_LOGS)/$(SINGULAR).log" |
|---|
| 299 | |
|---|
| 300 | $(INST)/$(PYCRYPTO): $(BASE) $(INST)/$(PYTHON) |
|---|
| 301 | $(INSTALL) "$(SAGE_SPKG) $(PYCRYPTO) 2>&1" "tee -a $(SAGE_LOGS)/$(PYCRYPTO).log" |
|---|
| 302 | |
|---|
| 303 | $(INST)/$(WEAVE): $(BASE) $(INST)/$(NUMPY) |
|---|
| 304 | $(INSTALL) "$(SAGE_SPKG) $(WEAVE) 2>&1" "tee -a $(SAGE_LOGS)/$(WEAVE).log" |
|---|
| 305 | |
|---|
| 306 | $(INST)/$(NETWORKX): $(BASE) $(INST)/$(PYTHON) |
|---|
| 307 | $(INSTALL) "$(SAGE_SPKG) $(NETWORKX) 2>&1" "tee -a $(SAGE_LOGS)/$(NETWORKX).log" |
|---|
| 308 | |
|---|
| 309 | $(INST)/$(MPMATH): $(BASE) $(INST)/$(PYTHON) |
|---|
| 310 | $(INSTALL) "$(SAGE_SPKG) $(MPMATH) 2>&1" "tee -a $(SAGE_LOGS)/$(MPMATH).log" |
|---|
| 311 | |
|---|
| 312 | $(INST)/$(ZLIB): $(BASE) |
|---|
| 313 | $(INSTALL) "$(SAGE_SPKG) $(ZLIB) 2>&1" "tee -a $(SAGE_LOGS)/$(ZLIB).log" |
|---|
| 314 | |
|---|
| 315 | ## << NON-GUI matplotlib >> |
|---|
| 316 | $(INST)/$(FREETYPE): $(BASE) |
|---|
| 317 | $(INSTALL) "$(SAGE_SPKG) $(FREETYPE) 2>&1" "tee -a $(SAGE_LOGS)/$(FREETYPE).log" |
|---|
| 318 | |
|---|
| 319 | $(INST)/$(LIBPNG): $(BASE) $(INST)/$(ZLIB) |
|---|
| 320 | $(INSTALL) "$(SAGE_SPKG) $(LIBPNG) 2>&1" "tee -a $(SAGE_LOGS)/$(LIBPNG).log" |
|---|
| 321 | |
|---|
| 322 | $(INST)/$(MATPLOTLIB): $(BASE) $(INST)/$(PYTHON) $(INST)/$(NUMPY) \ |
|---|
| 323 | $(INST)/$(FREETYPE) $(INST)/$(LIBPNG) \ |
|---|
| 324 | $(INST)/$(GDMODULE) |
|---|
| 325 | $(INSTALL) "$(SAGE_SPKG) $(MATPLOTLIB) 2>&1" "tee -a $(SAGE_LOGS)/$(MATPLOTLIB).log" |
|---|
| 326 | #### |
|---|
| 327 | |
|---|
| 328 | $(INST)/$(CDDLIB): $(BASE) $(INST)/$(MPIR) |
|---|
| 329 | $(INSTALL) "$(SAGE_SPKG) $(CDDLIB) 2>&1" "tee -a $(SAGE_LOGS)/$(CDDLIB).log" |
|---|
| 330 | |
|---|
| 331 | $(INST)/$(GFAN): $(BASE) $(INST)/$(MPIR) $(INST)/$(CDDLIB) |
|---|
| 332 | $(INSTALL) "$(SAGE_SPKG) $(GFAN) 2>&1" "tee -a $(SAGE_LOGS)/$(GFAN).log" |
|---|
| 333 | |
|---|
| 334 | $(INST)/$(TACHYON): $(BASE) $(INST)/$(LIBPNG) |
|---|
| 335 | $(INSTALL) "$(SAGE_SPKG) $(TACHYON) 2>&1" "tee -a $(SAGE_LOGS)/$(TACHYON).log" |
|---|
| 336 | |
|---|
| 337 | $(INST)/$(ECM): $(BASE) $(INST)/$(MPIR) |
|---|
| 338 | $(INSTALL) "$(SAGE_SPKG) $(ECM) 2>&1" "tee -a $(SAGE_LOGS)/$(ECM).log" |
|---|
| 339 | |
|---|
| 340 | $(INST)/$(RATPOINTS): $(BASE) $(INST)/$(MPIR) |
|---|
| 341 | $(INSTALL) "$(SAGE_SPKG) $(RATPOINTS) 2>&1" "tee -a $(SAGE_LOGS)/$(RATPOINTS).log" |
|---|
| 342 | |
|---|
| 343 | $(INST)/$(ECL): $(BASE) $(INST)/$(MPIR) $(INST)/$(TERMCAP) \ |
|---|
| 344 | $(INST)/$(READLINE) $(INST)/$(BOEHM_GC) |
|---|
| 345 | $(INSTALL) "$(SAGE_SPKG) $(ECL) 2>&1" "tee -a $(SAGE_LOGS)/$(ECL).log" |
|---|
| 346 | |
|---|
| 347 | $(INST)/$(MAXIMA): $(BASE) $(INST)/$(ECL) |
|---|
| 348 | $(INSTALL) "$(SAGE_SPKG) $(MAXIMA) 2>&1" "tee -a $(SAGE_LOGS)/$(MAXIMA).log" |
|---|
| 349 | |
|---|
| 350 | $(INST)/$(R): $(BASE) $(INST)/$(PYTHON) $(INST)/$(ATLAS) $(INST)/$(ICONV) $(INST)/$(FORTRAN) |
|---|
| 351 | $(INSTALL) "$(SAGE_SPKG) $(R) 2>&1" "tee -a $(SAGE_LOGS)/$(R).log" |
|---|
| 352 | |
|---|
| 353 | $(INST)/$(SYMPY): $(BASE) $(INST)/$(PYTHON) |
|---|
| 354 | $(INSTALL) "$(SAGE_SPKG) $(SYMPY) 2>&1" "tee -a $(SAGE_LOGS)/$(SYMPY).log" |
|---|
| 355 | |
|---|
| 356 | $(INST)/$(CYTHON): $(BASE) $(INST)/$(PYTHON) |
|---|
| 357 | $(INSTALL) "$(SAGE_SPKG) $(CYTHON) 2>&1" "tee -a $(SAGE_LOGS)/$(CYTHON).log" |
|---|
| 358 | |
|---|
| 359 | $(INST)/$(FLINTQS): $(BASE) $(INST)/$(MPIR) |
|---|
| 360 | $(INSTALL) "$(SAGE_SPKG) $(FLINTQS) 2>&1" "tee -a $(SAGE_LOGS)/$(FLINTQS).log" |
|---|
| 361 | |
|---|
| 362 | $(INST)/$(FLINT): $(BASE) $(INST)/$(MPIR) $(INST)/$(NTL) |
|---|
| 363 | $(INSTALL) "$(SAGE_SPKG) $(FLINT) 2>&1" "tee -a $(SAGE_LOGS)/$(FLINT).log" |
|---|
| 364 | |
|---|
| 365 | # Mercurial must be built before building extcode. See trac ticket #6508. |
|---|
| 366 | $(INST)/$(EXTCODE): $(BASE) $(INST)/$(MERCURIAL) |
|---|
| 367 | $(INSTALL) "$(SAGE_SPKG) $(EXTCODE) 2>&1" "tee -a $(SAGE_LOGS)/$(EXTCODE).log" |
|---|
| 368 | |
|---|
| 369 | $(INST)/$(EXAMPLES): $(BASE) |
|---|
| 370 | $(INSTALL) "$(SAGE_SPKG) $(EXAMPLES) 2>&1" "tee -a $(SAGE_LOGS)/$(EXAMPLES).log" |
|---|
| 371 | |
|---|
| 372 | $(INST)/$(LIBM4RI): $(BASE) |
|---|
| 373 | $(INSTALL) "$(SAGE_SPKG) $(LIBM4RI) 2>&1" "tee -a $(SAGE_LOGS)/$(LIBM4RI).log" |
|---|
| 374 | |
|---|
| 375 | # Note, zn_poly *can* use flint too. If that is felt desirable, |
|---|
| 376 | # then zn_poly should be configured to use flint, and a dependancy added here. |
|---|
| 377 | $(INST)/$(ZNPOLY): $(BASE) $(INST)/$(MPIR) $(INST)/$(NTL) |
|---|
| 378 | $(INSTALL) "$(SAGE_SPKG) $(ZNPOLY) 2>&1" "tee -a $(SAGE_LOGS)/$(ZNPOLY).log" |
|---|
| 379 | |
|---|
| 380 | # setuptools forgets to update easy-install.pth during parallel |
|---|
| 381 | # builds, so we build the relevant packages serially. Note: To avoid |
|---|
| 382 | # branching, we haven't given explicit dependencies, but the chain's |
|---|
| 383 | # order is important. |
|---|
| 384 | $(INST)/$(SAGENB): $(BASE) $(INST)/$(SQLALCHEMY) |
|---|
| 385 | $(INSTALL) "$(SAGE_SPKG) $(SAGENB) 2>&1" "tee -a $(SAGE_LOGS)/$(SAGENB).log" |
|---|
| 386 | |
|---|
| 387 | $(INST)/$(SQLALCHEMY): $(BASE) $(INST)/$(SPHINX) |
|---|
| 388 | $(INSTALL) "$(SAGE_SPKG) $(SQLALCHEMY) 2>&1" "tee -a $(SAGE_LOGS)/$(SQLALCHEMY).log" |
|---|
| 389 | |
|---|
| 390 | $(INST)/$(SPHINX): $(BASE) $(INST)/$(JINJA2) |
|---|
| 391 | $(INSTALL) "$(SAGE_SPKG) $(SPHINX) 2>&1" "tee -a $(SAGE_LOGS)/$(SPHINX).log" |
|---|
| 392 | |
|---|
| 393 | $(INST)/$(JINJA2): $(BASE) $(INST)/$(JINJA) |
|---|
| 394 | $(INSTALL) "$(SAGE_SPKG) $(JINJA2) 2>&1" "tee -a $(SAGE_LOGS)/$(JINJA2).log" |
|---|
| 395 | |
|---|
| 396 | $(INST)/$(JINJA): $(BASE) $(INST)/$(PYGMENTS) |
|---|
| 397 | $(INSTALL) "$(SAGE_SPKG) $(JINJA) 2>&1" "tee -a $(SAGE_LOGS)/$(JINJA).log" |
|---|
| 398 | |
|---|
| 399 | $(INST)/$(PYGMENTS): $(BASE) $(INST)/$(ZODB) |
|---|
| 400 | $(INSTALL) "$(SAGE_SPKG) $(PYGMENTS) 2>&1" "tee -a $(SAGE_LOGS)/$(PYGMENTS).log" |
|---|
| 401 | |
|---|
| 402 | $(INST)/$(ZODB): $(BASE) $(INST)/$(TWISTED) |
|---|
| 403 | $(INSTALL) "$(SAGE_SPKG) $(ZODB) 2>&1" "tee -a $(SAGE_LOGS)/$(ZODB).log" |
|---|
| 404 | |
|---|
| 405 | $(INST)/$(TWISTED): $(BASE) $(INST)/$(PYTHON) $(INST)/$(PYTHON_GNUTLS) \ |
|---|
| 406 | $(INST)/$(PEXPECT) $(INST)/$(DOCUTILS) \ |
|---|
| 407 | $(INST)/$(SETUPTOOLS) |
|---|
| 408 | $(INSTALL) "$(SAGE_SPKG) $(TWISTED) 2>&1" "tee -a $(SAGE_LOGS)/$(TWISTED).log" |
|---|
| 409 | |
|---|
| 410 | # For reference and for when the setuptools problem is solved, here |
|---|
| 411 | # are the actual dependencies, as of 4.3.3: |
|---|
| 412 | # |
|---|
| 413 | # sagenb: python pexpect twisted jinja jinja2 sphinx docutils setuptools |
|---|
| 414 | # sqlalchemy: python setuptools |
|---|
| 415 | # sphinx: docutils jinja2 pygments |
|---|
| 416 | # jinja2: python docutils setuptools |
|---|
| 417 | # jinja: python docutils setuptools |
|---|
| 418 | # pygments: python setuptools |
|---|
| 419 | # twisted: python python_gnutls setuptools |
|---|
| 420 | # zodb: python setuptools |
|---|
| 421 | |
|---|
| 422 | # All components that are linked against extensions need to be listed here |
|---|
| 423 | $(INST)/$(SAGE): $(BASE) \ |
|---|
| 424 | $(INST)/$(ATLAS) \ |
|---|
| 425 | $(INST)/$(CEPHES) \ |
|---|
| 426 | $(INST)/$(CLIQUER) \ |
|---|
| 427 | $(INST)/$(CONWAY) \ |
|---|
| 428 | $(INST)/$(CYTHON) \ |
|---|
| 429 | $(INST)/$(DOCUTILS) \ |
|---|
| 430 | $(INST)/$(ECL) \ |
|---|
| 431 | $(INST)/$(ECLIB) \ |
|---|
| 432 | $(INST)/$(ECM) \ |
|---|
| 433 | $(INST)/$(ELLIPTIC_CURVES) \ |
|---|
| 434 | $(INST)/$(EXTCODE) \ |
|---|
| 435 | $(INST)/$(FLINT) \ |
|---|
| 436 | $(INST)/$(FPLLL) \ |
|---|
| 437 | $(INST)/$(GDMODULE) \ |
|---|
| 438 | $(INST)/$(GRAPHS) \ |
|---|
| 439 | $(INST)/$(GIVARO) \ |
|---|
| 440 | $(INST)/$(GLPK) \ |
|---|
| 441 | $(INST)/$(GSL) \ |
|---|
| 442 | $(INST)/$(IML) \ |
|---|
| 443 | $(INST)/$(IPYTHON) \ |
|---|
| 444 | $(INST)/$(LCALC) \ |
|---|
| 445 | $(INST)/$(LIBM4RI) \ |
|---|
| 446 | $(INST)/$(LINBOX) \ |
|---|
| 447 | $(INST)/$(MATPLOTLIB) \ |
|---|
| 448 | $(INST)/$(MERCURIAL) \ |
|---|
| 449 | $(INST)/$(MPFI) \ |
|---|
| 450 | $(INST)/$(MPFR) \ |
|---|
| 451 | $(INST)/$(MPIR) \ |
|---|
| 452 | $(INST)/$(MPMATH) \ |
|---|
| 453 | $(INST)/$(NETWORKX) \ |
|---|
| 454 | $(INST)/$(NTL) \ |
|---|
| 455 | $(INST)/$(NUMPY) \ |
|---|
| 456 | $(INST)/$(PARI) \ |
|---|
| 457 | $(INST)/$(PEXPECT) \ |
|---|
| 458 | $(INST)/$(POLYBORI) \ |
|---|
| 459 | $(INST)/$(PYCRYPTO) \ |
|---|
| 460 | $(INST)/$(PYNAC) \ |
|---|
| 461 | $(INST)/$(PYTHON) \ |
|---|
| 462 | $(INST)/$(R) \ |
|---|
| 463 | $(INST)/$(RATPOINTS) \ |
|---|
| 464 | $(INST)/$(RUBIKS) \ |
|---|
| 465 | $(INST)/$(SAGENB) \ |
|---|
| 466 | $(INST)/$(SCONS) \ |
|---|
| 467 | $(INST)/$(SETUPTOOLS) \ |
|---|
| 468 | $(INST)/$(SINGULAR) \ |
|---|
| 469 | $(INST)/$(SYMMETRICA) \ |
|---|
| 470 | $(INST)/$(SYMPY) \ |
|---|
| 471 | $(INST)/$(ZNPOLY) |
|---|
| 472 | $(INSTALL) "$(SAGE_SPKG) $(SAGE) 2>&1" "tee -a $(SAGE_LOGS)/$(SAGE).log" |
|---|
| 473 | |
|---|
| 474 | # Do not remove PYTHON below -- see trac 9368 |
|---|
| 475 | $(INST)/$(FORTRAN): $(BASE) $(INST)/$(PYTHON) |
|---|
| 476 | $(INSTALL) "$(SAGE_SPKG) $(FORTRAN) 2>&1" "tee -a $(SAGE_LOGS)/$(FORTRAN).log" |
|---|
| 477 | |
|---|
| 478 | $(INST)/$(F2C): $(BASE) $(INST)/$(FORTRAN) |
|---|
| 479 | $(INSTALL) "$(SAGE_SPKG) $(F2C) 2>&1" "tee -a $(SAGE_LOGS)/$(F2C).log" |
|---|
| 480 | |
|---|
| 481 | $(INST)/$(PIL): $(BASE) $(INST)/$(PYTHON) |
|---|
| 482 | $(INSTALL) "$(SAGE_SPKG) $(PIL) 2>&1" "tee -a $(SAGE_LOGS)/$(PIL).log" |
|---|
| 483 | |
|---|
| 484 | $(INST)/$(LAPACK): $(BASE) $(INST)/$(FORTRAN) |
|---|
| 485 | $(INSTALL) "$(SAGE_SPKG) $(LAPACK) 2>&1" "tee -a $(SAGE_LOGS)/$(LAPACK).log" |
|---|
| 486 | |
|---|
| 487 | $(INST)/$(BLAS): $(BASE) $(INST)/$(FORTRAN) |
|---|
| 488 | $(INSTALL) "$(SAGE_SPKG) $(BLAS) 2>&1" "tee -a $(SAGE_LOGS)/$(BLAS).log" |
|---|
| 489 | |
|---|
| 490 | $(INST)/$(NUMPY): $(BASE) $(INST)/$(PYTHON) $(INST)/$(FORTRAN) $(INST)/$(F2C) \ |
|---|
| 491 | $(INST)/$(LAPACK) $(INST)/$(BLAS) $(INST)/$(ATLAS) |
|---|
| 492 | $(INSTALL) "$(SAGE_SPKG) $(NUMPY) 2>&1" "tee -a $(SAGE_LOGS)/$(NUMPY).log" |
|---|
| 493 | |
|---|
| 494 | $(INST)/$(SCIPY): $(BASE) $(INST)/$(FORTRAN) $(INST)/$(F2C) \ |
|---|
| 495 | $(INST)/$(LAPACK) $(INST)/$(BLAS) $(INST)/$(NUMPY) |
|---|
| 496 | $(INSTALL) "$(SAGE_SPKG) $(SCIPY) 2>&1" "tee -a $(SAGE_LOGS)/$(SCIPY).log" |
|---|
| 497 | |
|---|
| 498 | $(INST)/$(SCIPY_SANDBOX): $(BASE) $(INST)/$(SCIPY) |
|---|
| 499 | $(INSTALL) "$(SAGE_SPKG) $(SCIPY_SANDBOX) 2>&1" "tee -a $(SAGE_LOGS)/$(SCIPY_SANDBOX).log" |
|---|
| 500 | |
|---|
| 501 | $(INST)/$(CVXOPT): $(BASE) $(INST)/$(FORTRAN) $(INST)/$(F2C) \ |
|---|
| 502 | $(INST)/$(LAPACK) $(INST)/$(BLAS) $(INST)/$(NUMPY) \ |
|---|
| 503 | $(INST)/$(ATLAS) $(INST)/$(CEPHES) |
|---|
| 504 | $(INSTALL) "$(SAGE_SPKG) $(CVXOPT) 2>&1" "tee -a $(SAGE_LOGS)/$(CVXOPT).log" |
|---|
| 505 | |
|---|
| 506 | $(INST)/$(CEPHES): $(BASE) |
|---|
| 507 | $(INSTALL) "$(SAGE_SPKG) $(CEPHES) 2>&1" "tee -a $(SAGE_LOGS)/$(CEPHES).log" |
|---|