On Tuesday 22 April 2008 02:37:45 Arc Riley wrote:
> Now we're down to what changes are needed to get Cython.Compiler
> building multiple sources per extension.  The current error is "foo
> functions declared but not defined", as it expects a 1:1 ratio between
> .pxd's and source files.  Removing this error will only partly solve
> the problem, since the C declarations are in the generated .c files
> and not in an extension-wide header.

I was noticing that this morning as I was playing with it.  My questions are 
mainly about what the process is supposed to look like.  I noticed in 
setup.py (from pysoy) that the include directory is being set, and that from 
the errors the mill compiler is finding the .pyd files.  But then instead of 
treating the .pyd files as an interface definition, it tries to compile them 
as self-contained modules.

So, is the intent to somehow have the compiler treat declared but not defined 
objects as forward declarations implicitly?  Or would we extend the Cython 
language a bit to be able to say "This block is a forward declaration", 
or "This file is an interface file"?  Or would we handle it using 
import/cimport somehow (and then not have the include directory, but go back 
to using something like the python import machinery)?

We could easily add some basic hooks in the imp module to handle the path 
searching for us in our distutils extension so we don't have to reimplement 
yet another path search/module load.

Also, would it be prudent to create a new distutils Command for mill so that 
we aren't stepping on the existing build_ext?  It might make it easier to 
isolate the changes we want in the build process since we'll end up without a 
lot of the implicit behavior in build_ext already (if there is any 
interfering), and we can always go back to overriding build_ext if it turns 
out that it's not a problem and still useful to have.

-- 
Evan Cofsky <[EMAIL PROTECTED]>

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
PySoy-Dev mailing list
[email protected]
http://www.pysoy.org/mailman/listinfo/pysoy-dev

Reply via email to