Greg Ward:
The whole point of Distutils is to allow Joe Unix Geek to develop module distributions that will build and install painlessly on non-Unix systems, *and* Jane Windows Weenie to develop module distributions that will build and install painlessly on non-Windows systems. If Jane is writing Windows-only extensions, then nobody's forcing her to use Distutils and maintain a setup script (although it would be nice). Ditto for Joe writing Unix-only extensions.
That means that Unix geeks can't use makefiles to distribute their Python modules, and it means that Windows weenies can't use Microsoft's project files to distribute their Python modules. The bad news is that if you really really want to use the local convention for automated building (both of which have advantages), you have to maintain a separate setup.py script. The good news is that setup.py is portable and written in a real programming language.
Good summary of the distutil charter. I would add a third objective: *users* on all platforms are tired of having to understand the intricate details of building and installing Python modules, and want module distributions that "just work". This includes platform specific distributions. --Guido van Rossum (home page: http://www.python.org/~guido/)