summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc-André Lemburg <mal@egenix.com>2001-01-26 18:03:24 (GMT)
committerMarc-André Lemburg <mal@egenix.com>2001-01-26 18:03:24 (GMT)
commit7c6fcda7bfe45a3b075f6434ebb65055ab4d7537 (patch)
tree5478e2cddcb0a397c9581898b2af089a7475da26
parent49c994239f81b3362033620762a82b84c9247c55 (diff)
downloadcpython-7c6fcda7bfe45a3b075f6434ebb65055ab4d7537.zip
cpython-7c6fcda7bfe45a3b075f6434ebb65055ab4d7537.tar.gz
cpython-7c6fcda7bfe45a3b075f6434ebb65055ab4d7537.tar.bz2
Fixed setup.py to allow:
1. skipping of extensions which cause an error (a warning message is written to stdout, but the build process no longer fails completely) 2. the readline extension to compile on SuSE Linux (and probably other platforms too) by adding /usr/lib/termcap to the library search path
-rw-r--r--setup.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/setup.py b/setup.py
index fc68172..e6bc676 100644
--- a/setup.py
+++ b/setup.py
@@ -3,6 +3,7 @@
import sys, os, string, getopt
from distutils import sysconfig
+from distutils.errors import *
from distutils.core import Extension, setup
from distutils.command.build_ext import build_ext
@@ -99,6 +100,14 @@ class PyBuildExt(build_ext):
build_ext.build_extensions(self)
+ def build_extension(self, ext):
+
+ try:
+ build_ext.build_extension(self, ext)
+ except (CCompilerError, DistutilsError), why:
+ self.announce('WARNING: building of extension "%s" failed: %s' %
+ (ext.name, sys.exc_info()[1]))
+
def get_platform (self):
# Get value of sys.platform
platform = sys.platform
@@ -235,6 +244,7 @@ class PyBuildExt(build_ext):
# readline
if (self.compiler.find_library_file(lib_dirs, 'readline')):
exts.append( Extension('readline', ['readline.c'],
+ library_dirs=['/usr/lib/termcap'],
libraries=['readline', 'termcap']) )
# The crypt module is now disabled by default because it breaks builds