Tarek Ziadé wrote:

And have the community create new ExtensionBuilder subclasses that
could be registered like command.

I don't see a need for registering anything. You should
just be able to explicitly say what tool to use for each
stage of the process.

I envisage something like this:

  from distutils import Extension, CCompile
  from pyrex.distutils import PyrexCompile

  foo_ext = Extension("foo",
    CCompile(
      PyrexCompile("foo.pyx"),
      "somelib.c"))

Here Extension, CCompile and PyrexCompile are constructors
for dependency graph nodes. Their responsibilities are:

  Extension -- takes compiled object files and libraries
    and links them into a Python extension.

  CCompile -- takes C source files and turns them into
    object files.

  PyrexCompile -- takes Pyrex source files and turns
    them into C source files.

They would of course also take other relevant arguments
such as compiler flags, search paths, etc.

--
Greg
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to