Distutils Examples
==================

This directory contains example setup scripts to go with several popular
Python module distributions: Numerical Python, mxDateTime, and PIL (the
Python Imaging Library).  (Why these three?  Well, the Numerical Python
example was originally done by Perry Stoll when he wrote the
msvccompiler module, so I gleefuly stole and modified it.  The other two
happened to be lying around on my hard drive when it came time to write
some more examples, so here they are.)

Trying out the example setup scripts is generally simple: just pick one,
copy it into the top-level directory of the corresponding distribution
as "setup.py", and run it like

   python setup.py -v build

if you just want to build extensions and copy .py files around, or

   python setup.py -v install

if you want to go all the way and install the thing.

A few caveats:

  * Numerical Python is not distributed as such, it is part of the "LLNL 
    Distribution".  The distribution root in this case is
    "LLNLDistribution11/Numerical" (assuming the current version of the
    LLNL Distribution is still 11 when you're reading this).  There is
    no support for the other module distributions in the LLNL
    bundle.

  * Before building Numerical Python, you'll have to rename (or copy
    or link, whatever you like) Src/numpy.def to Src/_numpy.def.
    (Unless you're using a post-release 11 LLNL Distribution, which
    will hopefully have this change made in it already.  Such a beast
    does not yet exist as I write this, though.)  This minor imposition
    on module developers allows for great simplification in the setup
    script.
        
  * For PIL, the example setup script builds and installs PIL in
    package form.  However, PIL is not yet fully packagized; its
    extension module, _imaging, is a top-level module.  Thus, it
    will wind up right in your site-packages directory, while the
    rest of PIL will be in the "PIL" package directory.

Finally, if you want to create a setup script for your own module
distribution, a good starting would be "template_setup.py" in this
directory.  Consult the USAGE file for details on just what every
option means, or the three real-world examples if you just want
a rough idea of what's going on.

$Id: README,v 1.2 1999/09/29 13:14:06 gward Exp $
