1PYTHON setup.py build_ext --inplace
2
3######## setup.py ###########
4
5from distutils.core import setup
6from Cython.Build import cythonize
7
8import Cython.Compiler.Scanning
9
10Cython.Compiler.Scanning.trace_scanner = 1
11
12setup(ext_modules=cythonize("*.pyx"))
13
14try:
15    from importlib.util import spec_from_file_location, module_from_spec
16except ImportError:
17    # Py<=3.4
18    # Try to import from the current directory.
19    import os, sys
20    sys.path.insert(0, os.getcwd())
21    import simple
22else:
23    # Py3.5+
24    import glob
25    ext_files = glob.glob("simple*.so") + glob.glob("simple*.pyd")
26    assert ext_files
27    spec = spec_from_file_location('simple', ext_files[0])
28    simple = module_from_spec(spec)
29    spec.loader.exec_module(simple)
30
31
32assert simple.test() == 123
33
34
35######## simple.pyx ###########
36
37def test():
38    return 123
39