[Distutils] meaning of -i option to build

Jeremy Hylton jeremy@alum.mit.edu
Thu Dec 19 14:42:19 2002

The short documentation blurb for the -i option says:

    ignore build-lib and put compiled extensions into the source
    directory alongside your pure Python modules

I tried to write an Extension() where the name of the extension did
not match exactly the source directory.  Say the extension is called
A.B and its source is in src/A/B.c.  IOW

    Extension("A.B", ["src/A/B.c"])

If I run setup.py build_ext -i, then distutils creates an A directory
parallel to src and installs A/B.so.  That doesn't match the
documentation, since it isn't in the same location as the source.

Some specific questions about this behavior:

Is it intended?  If so, then it's a doc bug.

Is there a better way to write my setup.py so that I don't run into
this behavior directly, e.g. an option to setup() that specifies the
source directory (similar to the packages_dir)?