Blame tests/run/cimport_from_sys_path.srctree
|
Packit Service |
99d393 |
PYTHON setup.py build_ext --inplace
|
|
Packit Service |
99d393 |
PYTHON -c "import a"
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
######## setup.py ########
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
from Cython.Build import cythonize
|
|
Packit Service |
99d393 |
from distutils.core import setup
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
# Add ./site-packages to sys.path
|
|
Packit Service |
99d393 |
from os.path import realpath
|
|
Packit Service |
99d393 |
import sys
|
|
Packit Service |
99d393 |
sys.path.append(realpath('site-packages'))
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
setup(
|
|
Packit Service |
99d393 |
ext_modules = cythonize("*.pyx"),
|
|
Packit Service |
99d393 |
)
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
######## site-packages/b/__init__.py ########
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
######## site-packages/b/other.pxd ########
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
cdef extern from "foo.c":
|
|
Packit Service |
99d393 |
int foo(int)
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
######## site-packages/b/foo.c ########
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
static int foo(int a)
|
|
Packit Service |
99d393 |
{
|
|
Packit Service |
99d393 |
return a * a;
|
|
Packit Service |
99d393 |
}
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
######## a.pyx ########
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
from b.other cimport foo
|
|
Packit Service |
99d393 |
print foo(10)
|
|
Packit Service |
99d393 |
|
|
Packit Service |
99d393 |
cimport b.other
|
|
Packit Service |
99d393 |
print b.other.foo(10)
|