[SciPy-dev] Building/distributing SciPy
Pearu Peterson
pearu at cens.ioc.ee
Mon Nov 18 19:03:09 CST 2002
Hi!
Recently we discussed about SciPy packaging issues and reached to some
consensus how to resolve them so that SciPy and its friends could be
packaged without dependency conflicts. See recent "Debian
package(s)?" thread in scipy-user mailing list.
Now I have made few steps towards implementing the required hooks and
before finishing implementation, I'd like to sketch the new way of
building, installing, and distributing SciPy and its friends in order to
get some feedback as there are still some open questions/choices that
may need to be discussed.
Distributing
============
Creating tarballs from CVS Repositories
---------------------------------------
scipy_core:
cd cvs/scipy
python setup_scipy_core.py -f -t MANIFEST_scipy_core.in
# -> SciPy_core-0.2.0_alpha_4.258.tar.gz
# .. contains scipy_test and scipy_distutils Python packages
# FINISHED
f2py:
cd cvs/f2py2e
python setup.py sdist -f
# -> F2PY-2.23.190-1372.tar.gz
# .. contains f2py2e Python package (without scipy_distutils)
# TODO: disable scipy_distutils in setup.py
scipy:
cd cvs/scipy
python setup_scipy.py sdist -f
# -> SciPy-0.2.0_alpha_150.4447.tar.gz
# .. contains scipy Python package (without scipy_test, scipy_distutils,
weave)
# TODO: depreciate using setup.py
weave:
cd cvs/scipy/weave
python setup_weave.py sdist -f
# -> weave-0.0.0.tar.gz
# .. contains weave (without scipy_distutils, scipy_test, scipy_base)
# TODO: ?? depreciate using setup.py
?? start using __cvs_version__.py as other packages do to
fix version numbering.
Eric, what do you think?
All these tarballs are downloadable from scipy.org.
Questions: Do we need a tarball, say
SciPy_all-0.2.0_alpha_150.4447.tar.gz,
that contains all modules including scipy_core, f2py2e, scipy, weave,
chaco, etc.? Will that simplify building SciPy for Windows platforms?
Recommendations for deb/rpm packagers. Tree of dependencies
------------------------------------------------------------------
python-scipy_core: python-dev
python-NumPy
python-f2py: python-scipy_core
C and F77 compilers
python-weave: python-scipy_core
C and C++ compilers
(is scipy_base actually required???)
python-scipy: python-f2py (required for building)
atlas or lapack/blas
fftw (optional)
python-weave (optional or require???)
gnuplot,wxPython (optional or require???,
will chaco replace gplt,xplt,plt???)
Binaries
========
???
Build using SciPy_all-???.tar.gz? Note that python-scipy is the only
package that contains extension modules, other packages are pure
Python and are actually not required for python-scipy binary (except may
be scipy_test).
Installing
==========
Make sure that all SciPy prerequisites are installed and working properly.
More information about the Scipy-dev
mailing list