diff options
-rw-r--r-- | setuptools/command/build_ext.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/setuptools/command/build_ext.py b/setuptools/command/build_ext.py index 78155223..2df3bc70 100644 --- a/setuptools/command/build_ext.py +++ b/setuptools/command/build_ext.py @@ -200,17 +200,20 @@ class build_ext(_build_ext): return _build_ext.get_outputs(self) + self.__get_stubs_outputs() def __get_stubs_outputs(self): - fn_exts = ['.py', '.pyc'] - if self.get_finalized_command('build_py').optimize: - fn_exts.append('.pyo') ns_ext_bases = ( os.path.join(self.build_lib, *ext._full_name.split('.')) for ext in self.extensions if ext._needs_stub ) - pairs = itertools.product(ns_ext_bases, fn_exts) + pairs = itertools.product(ns_ext_bases, self.__get_output_extensions()) return (base + fnext for base, fnext in pairs) + def __get_output_extensions(self): + yield '.py' + yield '.pyc' + if self.get_finalized_command('build_py').optimize: + yield '.pyo' + def write_stub(self, output_dir, ext, compile=False): log.info("writing stub loader for %s to %s", ext._full_name, output_dir) |