[Distutils] Questions about distutils strategy

David Ascher da@ski.org
Thu, 2 Dec 1999 09:54:28 -0800 (Pacific Standard Time)

On Thu, 2 Dec 1999, Greg Ward wrote:

> > 2) the main/compelling reason is that I have to debug the python
> > extensions.  The extension implementation is normally tested, and
> > debugged prior to integration into Python. But the extension layer
> > often needs some debugging as we are interfacing C++ with STL
> > containers to Python data types.  I can debug just fine using
> > distutils on Solaris/Linux, but cannot do the same on Windows.  As far
> > as I can tell, you _have_ to have a DevStudio project setup to debug
> > anything under windows.  Since our product will be delivered as a
> > standalone tool, including python, I do not need the distribution
> > facilities of distutils, only the development. But, once I have
> > developed a DevStudio project/workspace for an extension, there is
> > little motivation to use distutils.
> Ooh, yuck.  And here I thought that invoking the MSVC command-line
> compiler directly was a feature.  David Ascher was the original
> volunteer to write the MSVC interface, and his plan was (I think) to
> generate a project file and then somehow invoke the build system on
> that.  When Perry Stoll came along with his MSVCCompiler class, David
> appeared happy to bow out... but maybe his idea needs to be
> resuscitated?  Yuck.  You Windows/MSVC experts got any good ideas?

<ears tingle>

Someone mentioned my name?

Sigh.  The project file vs. Makefile debate is as old as the world (well,
at least as old as MPW =).

I haven't looked carefully enough at the innards of distutils to be sure,
but glancing at msvccompiler.py, it looks like Perry did the simple thing
(and praise him).  

That said, I'd be surprised if making a project/workspace file would be
that hard given Perry's groundwork (and stealing the templates from
compile.py). Alas, I have *no time* in the foreseeable future to do this.  
If someone is interested in doing it, however, I can help them with
whatever knowledge I gathered doing compile.py.

The hard thing will probably be to support all of the things which Windows
developers expect, such as the ability to have Debug and Release builds
(and CE builds, and ...).