[Distutils] packages and Maintaining Python in general

Sanner Michel sanner@scripps.edu
Mon, 18 Jan 1999 15:35:08 -0800

Following Barry's advice I post my message on this list too. Sorry for
those of you you get it twice, but I wasn't aware of that SIG ! now I am
a subscriber :)


I have spend my week end moving opn from Python1.5 to Python1.5.2b1 and
come to the conclusion that there OUGHT to be better way !!!

It is a lot of work because I try to maintain Python for

- Sgi under Irix5.3 Irix6 and Irix646
- Sun
- Dec alpha under OSF1.2 and OSF 1.4
- HP
- Linux
- Cray T3e

and we use many "packages", NumPy, PIL, PyOpenGL. In addition I want to
only one Python environment for each architecture/OS and place it on
some disk
mounted by all these computers.

Although scripts coming with some of the packages help greatly (thanks
there are still a number of things that I have problems with.

Here are some of the problems I have been strugling with:

1 - I started to use Makefile.pre.in to generate make file for
packages. Currently when any user types "python" he gets 1.5 (current
version). So I decided to build Python1.5.2b1 and install it somewhere
not in
the users path. The problem is that when I use Makefile.pre.in it uses
and gets version 1.5. The only work around I found was to edit the copy
Makefile.pre.in and make it point to the 1.5.2b1 binary.

2 - When building Python for several architectures, the installation
allows to separate platform-dependant and platform-independant files.
I'd like
the same for packages, i.e. when a package has both types of files I'd
like to
be able to have a package with that name in the platform-independant AND
in the
platform-dependant tree. This DOES NOT work currently because import
searching after it find a package matching that name.

3 - Numeric Python should really be part of the standard distribution ..

(please :). Actually I would even argue that it should be part of the
such that developers can rely on the fact that this data type, CRUCIAL
for any
scientific application and key to Python's success in that field is
This would also allow for instance to have this datatype included in the
mappings for Python.

4 - How difficult would it be to provide some more flexibility in the
sctructure created by "make install":

I'd like to have something like:

PYTHONROOT = /mgl/tools/python/$VERSION

$PYTHONROOT/packages               # arch independent packages
$PYTHONROOT/$ARCH_OS/packages      # arch dependent packages

I do not need the Python version "python1.5" below that. In that way I
install any new version in parallele with an existing one.

Any advice/help/modification is very welcome :)

I am also going to post some messages that are more specific to
packages ... so bear with me !

Thanks a lot



Sanner Michel Ph.D.
The Scripps Research Institute
10550 North Torrey Pines Road
La Jolla, CA 92037
Tel. (619) 784-2341
Fax. (619) 784-2860
e-mail sanner@scripps.edu
Home Page http://www.scripps.edu/pub/olson-web/people/sanner