It seems that by default setup from distutils.core with cmdclass set to build_ext, compiles a cpp or c file in the current working directory. Is there a way to determine where the generated c code is written to? Otherwise a repository will be littered with generated code.
For example this file setup.py will write a file example.c to the current working directory:
from distutils.core import setup
from Cython.Build import cythonize
ext_modules = cythonize("example.pyx"))
You can pass the option
build_dir="directory name" to
# rest of file as before setup( ext_modules = cythonize("example.pyx", build_dir="build"))
The above code will put the generated c files in the directory "build" (which makes sense, since by default it's where distutils puts temporary object files and so forth when it's building).
My original answer had
build_dir. Thanks to @ArthurTacca for pointing out that that no longer seems to be right.