Commit dbd2f3a6 authored by Stefan Behnel's avatar Stefan Behnel

Reduce complexity by avoiding to redefine a helper function inside a loop that...

Reduce complexity by avoiding to redefine a helper function inside a loop that does not depend on the loop state
parent e87f27ee
...@@ -897,19 +897,20 @@ def cythonize(module_list, exclude=None, nthreads=0, aliases=None, quiet=False, ...@@ -897,19 +897,20 @@ def cythonize(module_list, exclude=None, nthreads=0, aliases=None, quiet=False,
deps = create_dependency_tree(ctx, quiet=quiet) deps = create_dependency_tree(ctx, quiet=quiet)
build_dir = getattr(options, 'build_dir', None) build_dir = getattr(options, 'build_dir', None)
modules_by_cfile = collections.defaultdict(list) def copy_to_build_dir(filepath, root=os.getcwd()):
to_compile = []
for m in module_list:
if build_dir:
root = os.getcwd() # distutil extension depends are relative to cwd
def copy_to_build_dir(filepath, root=root):
filepath_abs = os.path.abspath(filepath) filepath_abs = os.path.abspath(filepath)
if os.path.isabs(filepath): if os.path.isabs(filepath):
filepath = filepath_abs filepath = filepath_abs
if filepath_abs.startswith(root): if filepath_abs.startswith(root):
# distutil extension depends are relative to cwd
mod_dir = join_path(build_dir, mod_dir = join_path(build_dir,
os.path.dirname(_relpath(filepath, root))) os.path.dirname(_relpath(filepath, root)))
copy_once_if_newer(filepath_abs, mod_dir) copy_once_if_newer(filepath_abs, mod_dir)
modules_by_cfile = collections.defaultdict(list)
to_compile = []
for m in module_list:
if build_dir:
for dep in m.depends: for dep in m.depends:
copy_to_build_dir(dep) copy_to_build_dir(dep)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment