squish/setup.py

62 lines
1.8 KiB
Python
Raw Permalink Normal View History

2021-09-19 02:53:43 -04:00
from setuptools import Extension, setup
import numpy
try:
2021-12-02 22:41:28 -05:00
from Cython.Build import cythonize
USE_CYTHON = True
except ImportError:
2021-12-02 22:41:28 -05:00
USE_CYTHON = False
if USE_CYTHON:
2021-12-02 22:41:28 -05:00
ext_modules = cythonize(
[
Extension(
"squish.core",
["squish/core.pyx"],
define_macros=[("NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION")],
),
Extension(
"squish.voronoi",
["squish/voronoi.pyx"],
extra_compile_args=["-fopenmp"],
extra_link_args=["-fopenmp"],
define_macros=[("NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION")],
),
Extension(
"squish.energy",
["squish/energy.pyx"],
extra_compile_args=["-fopenmp"],
extra_link_args=["-fopenmp"],
define_macros=[("NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION")],
),
],
annotate=False,
compiler_directives={
"language_level": 3,
"boundscheck": False,
"wraparound": False,
"cdivision": True,
},
)
else:
2021-12-02 22:41:28 -05:00
ext_modules = [
2021-12-02 22:47:33 -05:00
Extension(
"squish.core",
["squish/core.c"],
define_macros=[("NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION")],
),
Extension(
"squish.voronoi",
["squish/voronoi.c"],
define_macros=[("NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION")],
),
Extension(
"squish.energy",
["squish/energy.c"],
define_macros=[("NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION")],
),
2021-12-02 22:41:28 -05:00
]
2021-09-19 02:53:43 -04:00
2021-12-02 22:41:28 -05:00
setup(ext_modules=ext_modules, include_dirs=[numpy.get_include()])