17115N/A--- Python-2.4.6/setup.py.orig 2006-10-09 06:41:25.000000000 +1300
17115N/A+++ Python-2.4.6/setup.py 2009-08-20 22:46:18.561556263 +1200
8904N/A@@ -239,9 +239,10 @@
6936N/A return sys.platform
6936N/A
6936N/A def detect_modules(self):
6936N/A- # Ensure that /usr/local is always used
6936N/A- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
6936N/A- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
6936N/A+ if sys.platform != 'sunos5':
6936N/A+ # Ensure that /usr/local is always used
6936N/A+ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
6936N/A+ add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
6936N/A
6936N/A # Add paths to popular package managers on OS X/darwin
6936N/A if sys.platform == "darwin":
8904N/A@@ -268,7 +269,7 @@
6936N/A # be assumed that no additional -I,-L directives are needed.
6936N/A lib_dirs = self.compiler.library_dirs + [
6936N/A '/lib64', '/usr/lib64',
6936N/A- '/lib', '/usr/lib',
6936N/A+ '/lib', '/usr/lib'
6936N/A ]
6936N/A inc_dirs = self.compiler.include_dirs + ['/usr/include']
6936N/A exts = []
17115N/A@@ -481,11 +482,23 @@
6957N/A exts.append( Extension('_csv', ['_csv.c']) )
6957N/A
6936N/A # socket(2)
8438N/A+ socket_libs = []
6936N/A+ if self.compiler.find_library_file(lib_dirs,
6936N/A+ 'socket'):
6936N/A+ socket_libs.append('socket')
6939N/A+ if self.compiler.find_library_file(lib_dirs,
6939N/A+ 'nsl'):
6939N/A+ socket_libs.append('nsl')
6944N/A+ if self.compiler.find_library_file(lib_dirs,
6944N/A+ 'resolv'):
6944N/A+ socket_libs.append('resolv')
6957N/A exts.append( Extension('_socket', ['socketmodule.c'],
6957N/A- depends = ['socketmodule.h']) )
6957N/A+ depends = ['socketmodule.h'],
6957N/A+ libraries = socket_libs) )
6936N/A # Detect SSL support for the socket module (via _ssl)
8438N/A ssl_incs = find_file('openssl/ssl.h', inc_dirs,
8438N/A- ['/usr/local/ssl/include',
8438N/A+ ['/usr/sfw/include',
8438N/A+ '/usr/local/ssl/include',
8146N/A '/usr/contrib/ssl/include/'
8146N/A ]
8438N/A )
17115N/A@@ -494,8 +507,13 @@
8904N/A ['/usr/kerberos/include'])
8146N/A if krb5_h:
8146N/A ssl_incs += krb5_h
8904N/A+ if sys.maxint == 2147483647L:
8904N/A+ sfw_libdir = '/usr/sfw/lib';
8904N/A+ else:
8904N/A+ sfw_libdir = '/usr/sfw/lib/64';
8146N/A ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs,
8146N/A- ['/usr/local/ssl/lib',
8904N/A+ [sfw_libdir,
8146N/A+ '/usr/local/ssl/lib',
8146N/A '/usr/contrib/ssl/lib/'
8146N/A ] )
8146N/A
17115N/A@@ -504,6 +522,7 @@
8146N/A exts.append( Extension('_ssl', ['_ssl.c'],
8146N/A include_dirs = ssl_incs,
8146N/A library_dirs = ssl_libs,
8146N/A+ runtime_library_dirs = ssl_libs,
8146N/A libraries = ['ssl', 'crypto'],
8146N/A depends = ['socketmodule.h']), )
8146N/A
17197N/A@@ -727,6 +746,14 @@
17115N/A
17115N/A # Curses support, requiring the System V version of curses, often
17115N/A # provided by the ncurses library.
17115N/A+ curses_lib_dirs = []
17115N/A+ curses_inc_dirs = []
17115N/A+ if platform == 'sunos5':
17115N/A+ # look for ncurses in /usr/gnu on Solaris
17115N/A+ curses_inc_dirs.append('/usr/include/ncurses')
17115N/A+ curses_lib_dirs.append('/usr/gnu/lib')
17197N/A+ curses_lib_dirs.append('/usr/gnu/lib/amd64')
17197N/A+ curses_lib_dirs.append('/usr/gnu/lib/sparcv9')
17115N/A panel_library = 'panel'
17115N/A if (self.compiler.find_library_file(lib_dirs, 'ncursesw')):
17115N/A curses_libs = ['ncursesw']
17115N/A@@ -735,10 +760,13 @@
17115N/A panel_library = 'panelw'
17115N/A exts.append( Extension('_curses', ['_cursesmodule.c'],
17115N/A libraries = curses_libs) )
17115N/A- elif (self.compiler.find_library_file(lib_dirs, 'ncurses')):
17115N/A+ elif (self.compiler.find_library_file(lib_dirs + curses_lib_dirs, 'ncurses')):
17115N/A curses_libs = ['ncurses']
17115N/A exts.append( Extension('_curses', ['_cursesmodule.c'],
17115N/A- libraries = curses_libs) )
17115N/A+ libraries = curses_libs,
17115N/A+ library_dirs = curses_lib_dirs,
17115N/A+ runtime_library_dirs = curses_lib_dirs,
17115N/A+ include_dirs = curses_inc_dirs ) )
17115N/A elif (self.compiler.find_library_file(lib_dirs, 'curses')
17115N/A and platform != 'darwin'):
17115N/A # OSX has an old Berkeley curses, not good enough for
17115N/A@@ -755,9 +783,12 @@
17115N/A
17115N/A # If the curses module is enabled, check for the panel module
17115N/A if (module_enabled(exts, '_curses') and
17115N/A- self.compiler.find_library_file(lib_dirs, panel_library)):
17115N/A+ self.compiler.find_library_file(lib_dirs + curses_lib_dirs, panel_library)):
17115N/A exts.append( Extension('_curses_panel', ['_curses_panel.c'],
17115N/A- libraries = [panel_library] + curses_libs) )
17115N/A+ libraries = [panel_library] + curses_libs,
17115N/A+ include_dirs = curses_inc_dirs,
17115N/A+ library_dirs = curses_lib_dirs,
17115N/A+ runtime_library_dirs = curses_lib_dirs ) )
17115N/A
17115N/A
17115N/A # Andrew Kuchling's zlib module. Note that some versions of zlib
17115N/A@@ -1023,13 +1054,23 @@
6936N/A
6936N/A # Assume we haven't found any of the libraries or include files
6936N/A # The versions with dots are used on Unix, and the versions without
6936N/A- # dots on Windows, for detection by cygwin.
6936N/A+ # dots on Windows, for detection by cygwin.
6936N/A+ added_lib_dirs = []
6936N/A+ tcl_tk_lib_dirs = ['/usr/sfw/lib']
6936N/A+ tcl_tk_inc_dirs = ['/usr/sfw/include']
6936N/A tcllib = tklib = tcl_includes = tk_includes = None
6936N/A for version in ['8.5', '85', '8.4', '84', '8.3', '83', '8.2',
6936N/A '82', '8.1', '81', '8.0', '80']:
6936N/A- tklib = self.compiler.find_library_file(lib_dirs, 'tk' + version)
6936N/A- tcllib = self.compiler.find_library_file(lib_dirs, 'tcl' + version)
6936N/A+ tklib = self.compiler.find_library_file(lib_dirs, 'tk' + version, tcl_tk_lib_dirs)
6936N/A+ tcllib = self.compiler.find_library_file(lib_dirs, 'tcl' + version, tcl_tk_lib_dirs)
17115N/A+ if tklib and tcllib:
17115N/A+ # Exit the loop when we've found the Tcl/Tk libraries
17115N/A+ break
6936N/A+ tklib = self.compiler.find_library_file(tcl_tk_lib_dirs, 'tk' + version)
6936N/A+ tcllib = self.compiler.find_library_file(tcl_tk_lib_dirs, 'tcl' + version)
17115N/A if tklib and tcllib:
6936N/A+ # found the libs in a non-standard dir
6936N/A+ added_lib_dirs.append(os.path.dirname(tcllib))
17115N/A # Exit the loop when we've found the Tcl/Tk libraries
17115N/A break
6936N/A
17115N/A@@ -1047,6 +1088,7 @@
6936N/A for dir in inc_dirs:
6936N/A tcl_include_sub += [dir + os.sep + "tcl" + dotversion]
6936N/A tk_include_sub += [dir + os.sep + "tk" + dotversion]
6936N/A+ tcl_include_sub += tcl_tk_inc_dirs
6936N/A tk_include_sub += tcl_include_sub
6936N/A tcl_includes = find_file('tcl.h', inc_dirs, tcl_include_sub)
6936N/A tk_includes = find_file('tk.h', inc_dirs, tk_include_sub)
17115N/A@@ -1058,7 +1100,7 @@
6936N/A
6936N/A # OK... everything seems to be present for Tcl/Tk.
6936N/A
6936N/A- include_dirs = [] ; libs = [] ; defs = [] ; added_lib_dirs = []
6936N/A+ include_dirs = [] ; libs = [] ; defs = []
6936N/A for dir in tcl_includes + tk_includes:
6936N/A if dir not in include_dirs:
6936N/A include_dirs.append(dir)
17115N/A@@ -1111,6 +1153,7 @@
6936N/A include_dirs = include_dirs,
6936N/A libraries = libs,
6936N/A library_dirs = added_lib_dirs,
6936N/A+ runtime_library_dirs = added_lib_dirs
6936N/A )
6936N/A self.extensions.append(ext)
6936N/A