diff --git a/lang/python26/Makefile b/lang/python26/Makefile index 9ec4a344913f..9aa26c7460b5 100644 --- a/lang/python26/Makefile +++ b/lang/python26/Makefile @@ -6,7 +6,7 @@ PORTNAME= python26 PORTVERSION= 2.6.2 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= lang python ipv6 MASTER_SITES= ${PYTHON_MASTER_SITES} MASTER_SITE_SUBDIR= ${PYTHON_MASTER_SITE_SUBDIR} @@ -40,7 +40,7 @@ EXAMPLESDIR= ${PREFIX}/share/examples/${PYTHON_VERSION} DATADIR= ${PREFIX}/share/${PYTHON_VERSION} PLATFORMS= plat-freebsd4 plat-freebsd5 plat-freebsd6 \ - plat-freebsd7 plat-freebsd8 + plat-freebsd7 plat-freebsd8 plat-freebsd9 BIN_SCRIPTS= 2to3 idle pydoc smtpd.py BIN_FILES= python python-shared python-config python-shared-config \ @@ -149,6 +149,8 @@ CONFIGURE_ARGS+= --with-fpectl .endif pre-patch: + ${CP} -r ${PATCH_WRKSRC}/Lib/plat-freebsd8 \ + ${PATCH_WRKSRC}/Lib/plat-freebsd9 ${MKDIR} ${WRKSRC} ${SHARED_WRKSRC}/Modules ${LN} ${PATCH_WRKSRC}/Lib/smtpd.py ${PATCH_WRKSRC}/Tools/scripts/ .for script in ${BIN_SCRIPTS} diff --git a/lang/python26/files/extra-patch-setup.py b/lang/python26/files/extra-patch-setup.py index 109f7841adfa..b163a2ee5892 100644 --- a/lang/python26/files/extra-patch-setup.py +++ b/lang/python26/files/extra-patch-setup.py @@ -16,7 +16,7 @@ + ) + libraries = [] + -+ elif platform in ('freebsd7', 'freebsd8'): ++ elif platform in ('freebsd7', 'freebsd8', 'freebsd9'): + macros = dict( # FreeBSD 7+ + HAVE_SEM_OPEN=1, + HAVE_SEM_TIMEDWAIT=1, diff --git a/lang/python26/files/patch-Lib_test_test_threading.py b/lang/python26/files/patch-Lib_test_test_threading.py index 011ae85349a4..c7dec6dd9b87 100644 --- a/lang/python26/files/patch-Lib_test_test_threading.py +++ b/lang/python26/files/patch-Lib_test_test_threading.py @@ -5,7 +5,7 @@ # Skip platforms with known problems forking from a worker thread. # See http://bugs.python.org/issue3863. - if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'os2emx'): -+ if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'os2emx'): ++ if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9', 'os2emx'): print >>sys.stderr, ('Skipping test_3_join_in_forked_from_thread' ' due to known OS bugs on'), sys.platform return diff --git a/lang/python26/files/patch-setup.py b/lang/python26/files/patch-setup.py index 556263f47c20..c7825e0f1872 100644 --- a/lang/python26/files/patch-setup.py +++ b/lang/python26/files/patch-setup.py @@ -1,6 +1,6 @@ ---- setup.py.orig 2008-09-30 09:15:45.000000000 +0900 -+++ setup.py 2008-10-09 20:34:35.000000000 +0900 -@@ -17,7 +17,7 @@ +--- setup.py.orig 2009-03-31 18:20:48.000000000 +0000 ++++ setup.py 2009-09-10 05:27:01.000000000 +0000 +@@ -17,7 +17,7 @@ from distutils.command.install import in from distutils.command.install_lib import install_lib # This global variable is used to hold the list of modules to be disabled. @@ -9,7 +9,7 @@ def add_dir_to_list(dirlist, dir): """Add the directory 'dir' to the list 'dirlist' (at the front) if -@@ -575,7 +575,7 @@ +@@ -577,7 +577,7 @@ class PyBuildExt(build_ext): readline_libs = ['readline'] if self.compiler.find_library_file(lib_dirs, @@ -18,7 +18,7 @@ readline_libs.append('ncursesw') elif self.compiler.find_library_file(lib_dirs, 'ncurses'): -@@ -587,7 +587,7 @@ +@@ -589,7 +589,7 @@ class PyBuildExt(build_ext): 'termcap'): readline_libs.append('termcap') exts.append( Extension('readline', ['readline.c'], @@ -27,7 +27,7 @@ extra_link_args=readline_extra_link_args, libraries=readline_libs) ) else: -@@ -687,6 +687,8 @@ +@@ -689,6 +689,8 @@ class PyBuildExt(build_ext): # 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']) ) @@ -36,7 +36,7 @@ # Modules that provide persistent dictionary-like semantics. You will # probably want to arrange for at least one of them to be available on -@@ -987,7 +989,7 @@ +@@ -990,7 +992,7 @@ class PyBuildExt(build_ext): # the more recent berkeleydb's db.h file first in the include path # when attempting to compile and it will fail. f = "/usr/include/db.h" @@ -45,7 +45,7 @@ data = open(f).read() m = re.search(r"#s*define\s+HASHVERSION\s+2\s*", data) if m is not None: -@@ -1066,7 +1068,7 @@ +@@ -1080,7 +1082,7 @@ class PyBuildExt(build_ext): # Curses support, requiring the System V version of curses, often # provided by the ncurses library. panel_library = 'panel' @@ -54,7 +54,7 @@ curses_libs = ['ncursesw'] # Bug 1464056: If _curses.so links with ncursesw, # _curses_panel.so must link with panelw. -@@ -1076,6 +1078,7 @@ +@@ -1090,6 +1092,7 @@ class PyBuildExt(build_ext): elif (self.compiler.find_library_file(lib_dirs, 'ncurses')): curses_libs = ['ncurses'] exts.append( Extension('_curses', ['_cursesmodule.c'], @@ -62,7 +62,7 @@ libraries = curses_libs) ) elif (self.compiler.find_library_file(lib_dirs, 'curses') and platform != 'darwin'): -@@ -1097,6 +1100,7 @@ +@@ -1111,6 +1114,7 @@ class PyBuildExt(build_ext): if (module_enabled(exts, '_curses') and self.compiler.find_library_file(lib_dirs, panel_library)): exts.append( Extension('_curses_panel', ['_curses_panel.c'], @@ -70,7 +70,25 @@ libraries = [panel_library] + curses_libs) ) else: missing.append('_curses_panel') -@@ -1869,9 +1873,7 @@ +@@ -1273,7 +1277,7 @@ class PyBuildExt(build_ext): + ) + libraries = [] + +- elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'): ++ elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9'): + # FreeBSD's P1003.1b semaphore support is very experimental + # and has many known problems. (as of June 2008) + macros = dict( # FreeBSD +@@ -1338,7 +1342,7 @@ class PyBuildExt(build_ext): + missing.append('linuxaudiodev') + + if platform in ('linux2', 'freebsd4', 'freebsd5', 'freebsd6', +- 'freebsd7', 'freebsd8'): ++ 'freebsd7', 'freebsd8', 'freebsd9'): + exts.append( Extension('ossaudiodev', ['ossaudiodev.c']) ) + else: + missing.append('ossaudiodev') +@@ -1891,9 +1895,7 @@ def main(): ext_modules=[Extension('_struct', ['_struct.c'])], # Scripts to install diff --git a/lang/python26/pkg-plist b/lang/python26/pkg-plist index 7d73a0a15eea..9f6e8115a731 100644 --- a/lang/python26/pkg-plist +++ b/lang/python26/pkg-plist @@ -911,6 +911,8 @@ lib/lib%%PYTHON_VERSION%%.so.1 %%PYTHON_LIBDIR%%/plat-freebsd7/regen %%PYTHON_LIBDIR%%/plat-freebsd8/IN.py %%PYTHON_LIBDIR%%/plat-freebsd8/regen +%%PYTHON_LIBDIR%%/plat-freebsd9/IN.py +%%PYTHON_LIBDIR%%/plat-freebsd9/regen %%PYTHON_LIBDIR%%/platform.py %%PYTHON_LIBDIR%%/plistlib.py %%PYTHON_LIBDIR%%/popen2.py @@ -2205,6 +2207,7 @@ lib/libpython2.6.a @dirrm %%PYTHON_LIBDIR%%/sqlite3/test @dirrm %%PYTHON_LIBDIR%%/sqlite3 @dirrm %%PYTHON_LIBDIR%%/site-packages +@dirrm %%PYTHON_LIBDIR%%/plat-freebsd9 @dirrm %%PYTHON_LIBDIR%%/plat-freebsd8 @dirrm %%PYTHON_LIBDIR%%/plat-freebsd7 @dirrm %%PYTHON_LIBDIR%%/plat-freebsd6 diff --git a/lang/python27/Makefile b/lang/python27/Makefile index 9ec4a344913f..9aa26c7460b5 100644 --- a/lang/python27/Makefile +++ b/lang/python27/Makefile @@ -6,7 +6,7 @@ PORTNAME= python26 PORTVERSION= 2.6.2 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= lang python ipv6 MASTER_SITES= ${PYTHON_MASTER_SITES} MASTER_SITE_SUBDIR= ${PYTHON_MASTER_SITE_SUBDIR} @@ -40,7 +40,7 @@ EXAMPLESDIR= ${PREFIX}/share/examples/${PYTHON_VERSION} DATADIR= ${PREFIX}/share/${PYTHON_VERSION} PLATFORMS= plat-freebsd4 plat-freebsd5 plat-freebsd6 \ - plat-freebsd7 plat-freebsd8 + plat-freebsd7 plat-freebsd8 plat-freebsd9 BIN_SCRIPTS= 2to3 idle pydoc smtpd.py BIN_FILES= python python-shared python-config python-shared-config \ @@ -149,6 +149,8 @@ CONFIGURE_ARGS+= --with-fpectl .endif pre-patch: + ${CP} -r ${PATCH_WRKSRC}/Lib/plat-freebsd8 \ + ${PATCH_WRKSRC}/Lib/plat-freebsd9 ${MKDIR} ${WRKSRC} ${SHARED_WRKSRC}/Modules ${LN} ${PATCH_WRKSRC}/Lib/smtpd.py ${PATCH_WRKSRC}/Tools/scripts/ .for script in ${BIN_SCRIPTS} diff --git a/lang/python27/files/extra-patch-setup.py b/lang/python27/files/extra-patch-setup.py index 109f7841adfa..b163a2ee5892 100644 --- a/lang/python27/files/extra-patch-setup.py +++ b/lang/python27/files/extra-patch-setup.py @@ -16,7 +16,7 @@ + ) + libraries = [] + -+ elif platform in ('freebsd7', 'freebsd8'): ++ elif platform in ('freebsd7', 'freebsd8', 'freebsd9'): + macros = dict( # FreeBSD 7+ + HAVE_SEM_OPEN=1, + HAVE_SEM_TIMEDWAIT=1, diff --git a/lang/python27/files/patch-Lib_test_test_threading.py b/lang/python27/files/patch-Lib_test_test_threading.py index 011ae85349a4..c7dec6dd9b87 100644 --- a/lang/python27/files/patch-Lib_test_test_threading.py +++ b/lang/python27/files/patch-Lib_test_test_threading.py @@ -5,7 +5,7 @@ # Skip platforms with known problems forking from a worker thread. # See http://bugs.python.org/issue3863. - if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'os2emx'): -+ if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'os2emx'): ++ if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9', 'os2emx'): print >>sys.stderr, ('Skipping test_3_join_in_forked_from_thread' ' due to known OS bugs on'), sys.platform return diff --git a/lang/python27/files/patch-setup.py b/lang/python27/files/patch-setup.py index 556263f47c20..c7825e0f1872 100644 --- a/lang/python27/files/patch-setup.py +++ b/lang/python27/files/patch-setup.py @@ -1,6 +1,6 @@ ---- setup.py.orig 2008-09-30 09:15:45.000000000 +0900 -+++ setup.py 2008-10-09 20:34:35.000000000 +0900 -@@ -17,7 +17,7 @@ +--- setup.py.orig 2009-03-31 18:20:48.000000000 +0000 ++++ setup.py 2009-09-10 05:27:01.000000000 +0000 +@@ -17,7 +17,7 @@ from distutils.command.install import in from distutils.command.install_lib import install_lib # This global variable is used to hold the list of modules to be disabled. @@ -9,7 +9,7 @@ def add_dir_to_list(dirlist, dir): """Add the directory 'dir' to the list 'dirlist' (at the front) if -@@ -575,7 +575,7 @@ +@@ -577,7 +577,7 @@ class PyBuildExt(build_ext): readline_libs = ['readline'] if self.compiler.find_library_file(lib_dirs, @@ -18,7 +18,7 @@ readline_libs.append('ncursesw') elif self.compiler.find_library_file(lib_dirs, 'ncurses'): -@@ -587,7 +587,7 @@ +@@ -589,7 +589,7 @@ class PyBuildExt(build_ext): 'termcap'): readline_libs.append('termcap') exts.append( Extension('readline', ['readline.c'], @@ -27,7 +27,7 @@ extra_link_args=readline_extra_link_args, libraries=readline_libs) ) else: -@@ -687,6 +687,8 @@ +@@ -689,6 +689,8 @@ class PyBuildExt(build_ext): # 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']) ) @@ -36,7 +36,7 @@ # Modules that provide persistent dictionary-like semantics. You will # probably want to arrange for at least one of them to be available on -@@ -987,7 +989,7 @@ +@@ -990,7 +992,7 @@ class PyBuildExt(build_ext): # the more recent berkeleydb's db.h file first in the include path # when attempting to compile and it will fail. f = "/usr/include/db.h" @@ -45,7 +45,7 @@ data = open(f).read() m = re.search(r"#s*define\s+HASHVERSION\s+2\s*", data) if m is not None: -@@ -1066,7 +1068,7 @@ +@@ -1080,7 +1082,7 @@ class PyBuildExt(build_ext): # Curses support, requiring the System V version of curses, often # provided by the ncurses library. panel_library = 'panel' @@ -54,7 +54,7 @@ curses_libs = ['ncursesw'] # Bug 1464056: If _curses.so links with ncursesw, # _curses_panel.so must link with panelw. -@@ -1076,6 +1078,7 @@ +@@ -1090,6 +1092,7 @@ class PyBuildExt(build_ext): elif (self.compiler.find_library_file(lib_dirs, 'ncurses')): curses_libs = ['ncurses'] exts.append( Extension('_curses', ['_cursesmodule.c'], @@ -62,7 +62,7 @@ libraries = curses_libs) ) elif (self.compiler.find_library_file(lib_dirs, 'curses') and platform != 'darwin'): -@@ -1097,6 +1100,7 @@ +@@ -1111,6 +1114,7 @@ class PyBuildExt(build_ext): if (module_enabled(exts, '_curses') and self.compiler.find_library_file(lib_dirs, panel_library)): exts.append( Extension('_curses_panel', ['_curses_panel.c'], @@ -70,7 +70,25 @@ libraries = [panel_library] + curses_libs) ) else: missing.append('_curses_panel') -@@ -1869,9 +1873,7 @@ +@@ -1273,7 +1277,7 @@ class PyBuildExt(build_ext): + ) + libraries = [] + +- elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'): ++ elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9'): + # FreeBSD's P1003.1b semaphore support is very experimental + # and has many known problems. (as of June 2008) + macros = dict( # FreeBSD +@@ -1338,7 +1342,7 @@ class PyBuildExt(build_ext): + missing.append('linuxaudiodev') + + if platform in ('linux2', 'freebsd4', 'freebsd5', 'freebsd6', +- 'freebsd7', 'freebsd8'): ++ 'freebsd7', 'freebsd8', 'freebsd9'): + exts.append( Extension('ossaudiodev', ['ossaudiodev.c']) ) + else: + missing.append('ossaudiodev') +@@ -1891,9 +1895,7 @@ def main(): ext_modules=[Extension('_struct', ['_struct.c'])], # Scripts to install diff --git a/lang/python27/pkg-plist b/lang/python27/pkg-plist index 7d73a0a15eea..9f6e8115a731 100644 --- a/lang/python27/pkg-plist +++ b/lang/python27/pkg-plist @@ -911,6 +911,8 @@ lib/lib%%PYTHON_VERSION%%.so.1 %%PYTHON_LIBDIR%%/plat-freebsd7/regen %%PYTHON_LIBDIR%%/plat-freebsd8/IN.py %%PYTHON_LIBDIR%%/plat-freebsd8/regen +%%PYTHON_LIBDIR%%/plat-freebsd9/IN.py +%%PYTHON_LIBDIR%%/plat-freebsd9/regen %%PYTHON_LIBDIR%%/platform.py %%PYTHON_LIBDIR%%/plistlib.py %%PYTHON_LIBDIR%%/popen2.py @@ -2205,6 +2207,7 @@ lib/libpython2.6.a @dirrm %%PYTHON_LIBDIR%%/sqlite3/test @dirrm %%PYTHON_LIBDIR%%/sqlite3 @dirrm %%PYTHON_LIBDIR%%/site-packages +@dirrm %%PYTHON_LIBDIR%%/plat-freebsd9 @dirrm %%PYTHON_LIBDIR%%/plat-freebsd8 @dirrm %%PYTHON_LIBDIR%%/plat-freebsd7 @dirrm %%PYTHON_LIBDIR%%/plat-freebsd6