from__future__importdivision,absolute_import,print_functionfromdistutils.command.build_pyimportbuild_pyasold_build_pyfromnumpy.distutils.misc_utilimportis_stringclassbuild_py(old_build_py):defrun(self):build_src=self.get_finalized_command('build_src')ifbuild_src.py_modules_dictandself.packagesisNone:self.packages=list(build_src.py_modules_dict.keys())old_build_py.run(self)deffind_package_modules(self,package,package_dir):modules=old_build_py.find_package_modules(self,package,package_dir)# Find build_src generated *.py files.build_src=self.get_finalized_command('build_src')modules+=build_src.py_modules_dict.get(package,[])returnmodulesdeffind_modules(self):old_py_modules=self.py_modules[:]new_py_modules=[_mfor_minself.py_modulesifis_string(_m)]self.py_modules[:]=new_py_modulesmodules=old_build_py.find_modules(self)self.py_modules[:]=old_py_modulesreturnmodules# XXX: Fix find_source_files for item in py_modules such that item is 3-tuple# and item[2] is source file.