def _build_ext_outputs(self): """list any built artifacts that may pollute the source directory.""" build_ext = self.get_finalized_command('build_ext') if build_ext.uses_cython(): fetch_build_eggs(['Cython'], dist=self.distribution) from Cython.Distutils import build_ext as cython_build_ext # @UnresolvedImport self.distribution.cmdclass['cython_build_ext'] = cython_build_ext self.distribution.command_obj['cython_build_ext'] = cython_build_ext(self.distribution) self.distribution.command_obj['cython_build_ext'].inplace = build_ext.inplace build_ext = self.get_finalized_command('cython_build_ext') for ext in build_ext.extensions: for name in self._cython_new_sources(build_ext, ext.sources, ext): yield name for name in build_ext.get_outputs(): yield name # cf. distribute setuptools.command.build_ext.build_ext.copy_extensions_to_source build_py = self.get_finalized_command('build_py') for ext in build_ext.extensions: fullname = build_ext.get_ext_fullname(ext.name) filename = build_ext.get_ext_filename(fullname) modpath = fullname.split('.') package = '.'.join(modpath[:-1]) package_dir = build_py.get_package_dir(package) yield os.path.join(package_dir, os.path.basename(filename))
def _build_ext_outputs(self): """list any built artifacts that may pollute the source directory.""" build_ext = self.get_finalized_command('build_ext') if build_ext.uses_cython(): fetch_build_eggs(['Cython'], dist=self.distribution) from Cython.Distutils import build_ext as cython_build_ext # @UnresolvedImport self.distribution.cmdclass['cython_build_ext'] = cython_build_ext self.distribution.command_obj[ 'cython_build_ext'] = cython_build_ext(self.distribution) self.distribution.command_obj[ 'cython_build_ext'].inplace = build_ext.inplace build_ext = self.get_finalized_command('cython_build_ext') for ext in build_ext.extensions: for name in self._cython_new_sources(build_ext, ext.sources, ext): yield name for name in build_ext.get_outputs(): yield name # cf. distribute setuptools.command.build_ext.build_ext.copy_extensions_to_source build_py = self.get_finalized_command('build_py') for ext in build_ext.extensions: fullname = build_ext.get_ext_fullname(ext.name) filename = build_ext.get_ext_filename(fullname) modpath = fullname.split('.') package = '.'.join(modpath[:-1]) package_dir = build_py.get_package_dir(package) yield os.path.join(package_dir, os.path.basename(filename))
def run(self): if self.uses_cython(): # Cython source - use cython's build_ext log.info("This project uses Cython, fetching builder egg") self.fetch_build_eggs(['Cython']) from Cython.Distutils import build_ext as cython_build_ext # Wire it into the distribution's command registry so we can run it self.distribution.cmdclass['cython_build_ext'] = cython_build_ext self.distribution.command_obj['cython_build_ext'] = cython_build_ext(self.distribution) self.distribution.command_obj['cython_build_ext'].inplace = self.inplace # Kick off the cython build self.run_command('cython_build_ext') else: # Regular C Extensions, build with setuptools _build_ext.run(self)
def run(self): if self.uses_cython(): # Cython source - use cython's build_ext log.info("This project uses Cython, fetching builder egg") self.fetch_build_eggs(['Cython']) from Cython.Distutils import build_ext as cython_build_ext # Wire it into the distribution's command registry so we can run it self.distribution.cmdclass['cython_build_ext'] = cython_build_ext self.distribution.command_obj[ 'cython_build_ext'] = cython_build_ext(self.distribution) self.distribution.command_obj[ 'cython_build_ext'].inplace = self.inplace # Kick off the cython build self.run_command('cython_build_ext') else: # Regular C Extensions, build with setuptools _build_ext.run(self)