1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
| #!/usr/bin/env python3
| """
| Build the Cython demonstrations of low-level access to NumPy random
|
| Usage: python setup.py build_ext -i
| """
| from os.path import dirname, join, abspath
|
| from setuptools import setup
| from setuptools.extension import Extension
|
| import numpy as np
| from Cython.Build import cythonize
|
|
| path = dirname(__file__)
| src_dir = join(dirname(path), '..', 'src')
| defs = [('NPY_NO_DEPRECATED_API', 0)]
| inc_path = np.get_include()
| # Add paths for npyrandom and npymath libraries:
| lib_path = [
| abspath(join(np.get_include(), '..', '..', 'random', 'lib')),
| abspath(join(np.get_include(), '..', 'lib'))
| ]
|
| extending = Extension("extending",
| sources=[join('.', 'extending.pyx')],
| include_dirs=[
| np.get_include(),
| join(path, '..', '..')
| ],
| define_macros=defs,
| )
| distributions = Extension("extending_distributions",
| sources=[join('.', 'extending_distributions.pyx')],
| include_dirs=[inc_path],
| library_dirs=lib_path,
| libraries=['npyrandom', 'npymath'],
| define_macros=defs,
| )
|
| extensions = [extending, distributions]
|
| setup(
| ext_modules=cythonize(extensions)
| )
|
|