I try to conditionally generate C code from a Cython pyx file. I found in the Cython documentation that I can use DEF
to define a value and IF
to c
Thank you for the link.
The interesting flag in the setup.py
is cython_compile_time_env
. And to import the Extension
from 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])
And in the test.pyx
:
...
IF OPENMP:
#Do openmp
ELSE:
#No openmp
...
Cython conditional statements (IF...ELSE
above) are documented here.