From c1c49f841c9d1bee1f445432fb8ed7cc170f3c31 Mon Sep 17 00:00:00 2001 From: Robert Bradshaw Date: Sun, 5 Dec 2010 02:04:11 -0800 Subject: [PATCH] Complicated cythonize setup. --- Cython/Build/Dependencies.py | 4 ++-- tests/build/cythonize_options.srctree | 29 +++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 tests/build/cythonize_options.srctree diff --git a/Cython/Build/Dependencies.py b/Cython/Build/Dependencies.py index 07a23ea2..65f732f8 100644 --- a/Cython/Build/Dependencies.py +++ b/Cython/Build/Dependencies.py @@ -424,8 +424,8 @@ def create_extension_list(patterns, ctx=None, aliases=None): # This is the user-exposed entry point. def cythonize(module_list, nthreads=0, aliases=None, **options): - c_options = CompilationOptions(options) - cpp_options = CompilationOptions(options); cpp_options.cplus = True + c_options = CompilationOptions(**options) + cpp_options = CompilationOptions(**options); cpp_options.cplus = True ctx = c_options.create_context() module_list = create_extension_list(module_list, ctx=ctx, aliases=aliases) deps = create_dependency_tree(ctx) diff --git a/tests/build/cythonize_options.srctree b/tests/build/cythonize_options.srctree new file mode 100644 index 00000000..56e38be6 --- /dev/null +++ b/tests/build/cythonize_options.srctree @@ -0,0 +1,29 @@ +PYTHON setup.py build_ext --inplace +PYTHON -c "import a" + +######## setup.py ######## + +from Cython.Build.Dependencies import cythonize + +from distutils.core import setup + +setup( + ext_modules = cythonize("*.pyx", include_path=['subdir'], compiler_directives={'cdivision': True}), +) + +######## a.pyx ######## + +cimport x +include "y.pxi" + +# cdivision from setup.py +def mod_int_c(int a, int b): + return a % b + +assert mod_int_c(-1, 10) < 0 + + +######## subdir/x.pxd ######## + +######## subdir/y.pxi ######## + -- 2.26.2