Patch #411055 from MvL: import each extension after building it, and
delete ones that can't be imported due to missing symbols or other
causes.
diff --git a/setup.py b/setup.py
index f544ee5..5c5f5dc 100644
--- a/setup.py
+++ b/setup.py
@@ -130,6 +130,17 @@
except (CCompilerError, DistutilsError), why:
self.announce('WARNING: building of extension "%s" failed: %s' %
(ext.name, sys.exc_info()[1]))
+ return
+ try:
+ __import__(ext.name)
+ except ImportError:
+ self.announce('WARNING: removing "%s" since importing it failed' %
+ ext.name)
+ assert not self.inplace
+ fullname = self.get_ext_fullname(ext.name)
+ ext_filename = os.path.join(self.build_lib,
+ self.get_ext_filename(fullname))
+ os.remove(ext_filename)
def get_platform (self):
# Get value of sys.platform
@@ -602,6 +613,9 @@
self.warn_dir=0
def main():
+ # turn off warnings when deprecated modules are imported
+ import warnings
+ warnings.filterwarnings("ignore",category=DeprecationWarning)
setup(name = 'Python standard library',
version = '%d.%d' % sys.version_info[:2],
cmdclass = {'build_ext':PyBuildExt, 'install':PyBuildInstall},