[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