This directory contains support file used to build RPM releases of
Python.  Its contents are maintained by Sean Reifschneider
<jafo@tummy.com>.

It is recommended that RPM builders use the python*.src.rpm file
downloaded from the "ftp.python.org:/pub/python/<version>/rpms".  These
may be more up to date than the files included in the base Python
release tar-file.

If you wish to build RPMs from the base Python release tar-file, note
that you will have to download the
"doc/<version>/html-<version>.tar.bz2"
file from python.org and place it into your "SOURCES" directory for
the build to complete.  This is the same directory that you place the
Python-2.3.1 release tar-file in.  You can then use the ".spec" file in
this directory to build RPMs.
