Comstackción condicional de Cython basada en un valor externo dado a través de `setuptools`

Intento generar condicionalmente código C desde un archivo pyth de Cython. Encontré en la documentación de Cython que puedo usar DEF para definir un valor y IF para generar condicionalmente un código basado en un valor definido, pero cómo puedo configurar el valor desde setup.py través de Extension desde setuptools .

Gracias

Gracias por el enlace.

La bandera interesante en setup.py es cython_compile_time_env . Y para importar la Extension desde Cython.

 from setuptools import setup from Cython.Distutils.extension import Extension ext = Extension( name, include_dirs=include_dirs, cython_compile_time_env=dict(OPENMP=True), sources=['test.pyx']) setup(name=name, cmdclass=dict(build_ext=build_ext), ext_modules=[ext]) 

Y en el test.pyx :

 ... IF OPENMP: #Do openmp ELSE: #No openmp ... 

Las declaraciones condicionales de Cython ( IF...ELSE arriba) están documentadas aquí .