- Add the appropriate Python platform (plat-*) files for FreeBSD 11 - Update pkg-plist Backport a upstream change [1] removing OS major version from the check to enable the OSS Audio module in setup.py: Issue #12326: don't test the major version of sys.platform Use startswith, instead of ==, when testing sys.platform to support new platforms like Linux 3 or OpenBSD 5. [2] [1] http://hg.python.org/cpython/rev/50f1922bc1d5 [2] http://bugs.python.org/issue12326
96 lines
4.3 KiB
Python
96 lines
4.3 KiB
Python
--- ./setup.py.orig 2012-04-10 09:25:37.000000000 +1000
|
|
+++ ./setup.py 2013-12-01 21:05:04.742891449 +1100
|
|
@@ -17,7 +17,7 @@
|
|
from distutils.spawn import find_executable
|
|
|
|
# This global variable is used to hold the list of modules to be disabled.
|
|
-disabled_module_list = []
|
|
+disabled_module_list = ["_sqlite3", "_tkinter", "_gdbm"]
|
|
|
|
def add_dir_to_list(dirlist, dir):
|
|
"""Add the directory 'dir' to the list 'dirlist' (at the front) if
|
|
@@ -601,7 +601,7 @@
|
|
# curses_library = readline_termcap_library
|
|
# elif self.compiler.find_library_file(lib_dirs, 'ncursesw'):
|
|
# (...)
|
|
- if self.compiler.find_library_file(lib_dirs, 'ncursesw'):
|
|
+ if self.compiler.find_library_file(lib_dirs, 'XXXncursesw'):
|
|
curses_library = 'ncursesw'
|
|
elif self.compiler.find_library_file(lib_dirs, 'ncurses'):
|
|
curses_library = 'ncurses'
|
|
@@ -637,7 +637,7 @@
|
|
'termcap'):
|
|
readline_libs.append('termcap')
|
|
exts.append( Extension('readline', ['readline.c'],
|
|
- library_dirs=['/usr/lib/termcap'],
|
|
+ library_dirs=['/usr/lib', '/usr/lib/termcap'],
|
|
extra_link_args=readline_extra_link_args,
|
|
libraries=readline_libs) )
|
|
else:
|
|
@@ -731,6 +731,8 @@
|
|
# OpenSSL doesn't do these until 0.9.8 so we'll bring our own hash
|
|
exts.append( Extension('_sha256', ['sha256module.c']) )
|
|
exts.append( Extension('_sha512', ['sha512module.c']) )
|
|
+ else:
|
|
+ open('.without_own_sha', 'w')
|
|
|
|
if openssl_ver < 0x00907000:
|
|
# no openssl at all, use our own md5 and sha1
|
|
@@ -1139,12 +1141,13 @@
|
|
# provided by the ncurses library.
|
|
panel_library = 'panel'
|
|
if curses_library.startswith('ncurses'):
|
|
- if curses_library == 'ncursesw':
|
|
+ if curses_library == 'XXXncursesw':
|
|
# Bug 1464056: If _curses.so links with ncursesw,
|
|
# _curses_panel.so must link with panelw.
|
|
panel_library = 'panelw'
|
|
curses_libs = [curses_library]
|
|
exts.append( Extension('_curses', ['_cursesmodule.c'],
|
|
+ library_dirs = ['/usr/lib'],
|
|
libraries = curses_libs) )
|
|
elif curses_library == 'curses' and platform != 'darwin':
|
|
# OSX has an old Berkeley curses, not good enough for
|
|
@@ -1165,6 +1168,7 @@
|
|
if (module_enabled(exts, '_curses') and
|
|
self.compiler.find_library_file(lib_dirs, panel_library)):
|
|
exts.append( Extension('_curses_panel', ['_curses_panel.c'],
|
|
+ library_dirs = ['/usr/lib'],
|
|
libraries = [panel_library] + curses_libs) )
|
|
else:
|
|
missing.append('_curses_panel')
|
|
@@ -1301,7 +1305,7 @@
|
|
macros = dict()
|
|
libraries = []
|
|
|
|
- elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'):
|
|
+ elif platform in ('freebsd6', 'freebsd7', 'freebsd8', 'freebsd9', 'freebsd10'):
|
|
# FreeBSD's P1003.1b semaphore support is very experimental
|
|
# and has many known problems. (as of June 2008)
|
|
macros = dict()
|
|
@@ -1344,8 +1348,12 @@
|
|
# End multiprocessing
|
|
|
|
# Platform-specific libraries
|
|
- if platform in ('linux2', 'freebsd4', 'freebsd5', 'freebsd6',
|
|
- 'freebsd7', 'freebsd8'):
|
|
+ #############################
|
|
+ # Backport Commit: http://hg.python.org/cpython/rev/50f1922bc1d5
|
|
+ # Backport Issue: http://bugs.python.org/issue12326
|
|
+ #############################
|
|
+ if any(platform.startswith(prefix)
|
|
+ for prefix in ("linux", "freebsd", "gnukfreebsd")):
|
|
exts.append( Extension('ossaudiodev', ['ossaudiodev.c']) )
|
|
else:
|
|
missing.append('ossaudiodev')
|
|
@@ -1831,8 +1839,7 @@
|
|
# called unless there's at least one extension module defined.
|
|
ext_modules=[Extension('_struct', ['_struct.c'])],
|
|
|
|
- scripts = ["Tools/scripts/pydoc3", "Tools/scripts/idle3",
|
|
- "Tools/scripts/2to3"]
|
|
+ scripts = []
|
|
)
|
|
|
|
# --install-platlib
|