diff --git a/00148-gdbm-1.9-magic-values.patch b/00148-gdbm-1.9-magic-values.patch deleted file mode 100644 index e8ce828..0000000 --- a/00148-gdbm-1.9-magic-values.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up Python-3.2.2/Lib/dbm/__init__.py.gdbm-1.9-magic Python-3.2.2/Lib/dbm/__init__.py ---- Python-3.2.2/Lib/dbm/__init__.py.gdbm-1.9-magic 2011-09-03 12:16:40.000000000 -0400 -+++ Python-3.2.2/Lib/dbm/__init__.py 2011-09-30 15:47:27.488863694 -0400 -@@ -166,7 +166,7 @@ def whichdb(filename): - return "" - - # Check for GNU dbm -- if magic == 0x13579ace: -+ if magic in (0x13579ace, 0x13579acd, 0x13579acf): - return "dbm.gnu" - - # Later versions of Berkeley db hash file have a 12-byte pad in -diff -up Python-3.2.2/Misc/NEWS.gdbm-1.9-magic Python-3.2.2/Misc/NEWS diff --git a/00149-backport-issue11254-pycache-bytecompilation-fix.patch b/00149-backport-issue11254-pycache-bytecompilation-fix.patch deleted file mode 100644 index d3651b0..0000000 --- a/00149-backport-issue11254-pycache-bytecompilation-fix.patch +++ /dev/null @@ -1,146 +0,0 @@ -diff -up Python-3.2.2/Doc/distutils/apiref.rst.issue11254 Python-3.2.2/Doc/distutils/apiref.rst ---- Python-3.2.2/Doc/distutils/apiref.rst.issue11254 2011-09-03 12:16:38.000000000 -0400 -+++ Python-3.2.2/Doc/distutils/apiref.rst 2011-10-10 17:01:23.167196855 -0400 -@@ -1204,9 +1204,9 @@ other utility module. - .. function:: byte_compile(py_files[, optimize=0, force=0, prefix=None, base_dir=None, verbose=1, dry_run=0, direct=None]) - - Byte-compile a collection of Python source files to either :file:`.pyc` or -- :file:`.pyo` files in the same directory. *py_files* is a list of files to -- compile; any files that don't end in :file:`.py` are silently skipped. -- *optimize* must be one of the following: -+ :file:`.pyo` files in a :file:`__pycache__` subdirectory (see :pep:`3147`). -+ *py_files* is a list of files to compile; any files that don't end in -+ :file:`.py` are silently skipped. *optimize* must be one of the following: - - * ``0`` - don't optimize (generate :file:`.pyc`) - * ``1`` - normal optimization (like ``python -O``) -@@ -1231,6 +1231,11 @@ other utility module. - is used by the script generated in indirect mode; unless you know what you're - doing, leave it set to ``None``. - -+ .. versionchanged:: 3.2.3 -+ Create ``.pyc`` or ``.pyo`` files with an :func:`import magic tag -+ ` in their name, in a :file:`__pycache__` subdirectory -+ instead of files without tag in the current directory. -+ - - .. function:: rfc822_escape(header) - -diff -up Python-3.2.2/Lib/distutils/tests/test_build_py.py.issue11254 Python-3.2.2/Lib/distutils/tests/test_build_py.py ---- Python-3.2.2/Lib/distutils/tests/test_build_py.py.issue11254 2011-09-03 12:16:40.000000000 -0400 -+++ Python-3.2.2/Lib/distutils/tests/test_build_py.py 2011-10-10 17:01:23.167196855 -0400 -@@ -3,6 +3,7 @@ - import os - import sys - import io -+import imp - import unittest - - from distutils.command.build_py import build_py -@@ -57,13 +58,15 @@ class BuildPyTestCase(support.TempdirMan - self.assertEqual(len(cmd.get_outputs()), 3) - pkgdest = os.path.join(destination, "pkg") - files = os.listdir(pkgdest) -+ pycache_dir = os.path.join(pkgdest, "__pycache__") - self.assertIn("__init__.py", files) - self.assertIn("README.txt", files) -- # XXX even with -O, distutils writes pyc, not pyo; bug? - if sys.dont_write_bytecode: -- self.assertNotIn("__init__.pyc", files) -+ self.assertFalse(os.path.exists(pycache_dir)) - else: -- self.assertIn("__init__.pyc", files) -+ # XXX even with -O, distutils writes pyc, not pyo; bug? -+ pyc_files = os.listdir(pycache_dir) -+ self.assertIn("__init__.%s.pyc" % imp.get_tag(), pyc_files) - - def test_empty_package_dir(self): - # See SF 1668596/1720897. -diff -up Python-3.2.2/Lib/distutils/tests/test_install_lib.py.issue11254 Python-3.2.2/Lib/distutils/tests/test_install_lib.py ---- Python-3.2.2/Lib/distutils/tests/test_install_lib.py.issue11254 2011-09-03 12:16:40.000000000 -0400 -+++ Python-3.2.2/Lib/distutils/tests/test_install_lib.py 2011-10-10 17:01:23.167196855 -0400 -@@ -1,6 +1,7 @@ - """Tests for distutils.command.install_data.""" - import sys - import os -+import imp - import unittest - - from distutils.command.install_lib import install_lib -@@ -32,18 +33,20 @@ class InstallLibTestCase(support.Tempdir - cmd.finalize_options() - self.assertEqual(cmd.optimize, 2) - -- @unittest.skipUnless(not sys.dont_write_bytecode, -- 'byte-compile not supported') -+ @unittest.skipIf(sys.dont_write_bytecode, 'byte-compile disabled') - def test_byte_compile(self): - pkg_dir, dist = self.create_dist() -+ os.chdir(pkg_dir) - cmd = install_lib(dist) - cmd.compile = cmd.optimize = 1 - - f = os.path.join(pkg_dir, 'foo.py') - self.write_file(f, '# python file') - cmd.byte_compile([f]) -- self.assertTrue(os.path.exists(os.path.join(pkg_dir, 'foo.pyc'))) -- self.assertTrue(os.path.exists(os.path.join(pkg_dir, 'foo.pyo'))) -+ pyc_file = imp.cache_from_source('foo.py') -+ pyo_file = imp.cache_from_source('foo.py', debug_override=False) -+ self.assertTrue(os.path.exists(pyc_file)) -+ self.assertTrue(os.path.exists(pyo_file)) - - def test_get_outputs(self): - pkg_dir, dist = self.create_dist() -diff -up Python-3.2.2/Lib/distutils/util.py.issue11254 Python-3.2.2/Lib/distutils/util.py ---- Python-3.2.2/Lib/distutils/util.py.issue11254 2011-09-03 12:16:40.000000000 -0400 -+++ Python-3.2.2/Lib/distutils/util.py 2011-10-10 17:01:23.172196793 -0400 -@@ -4,7 +4,11 @@ Miscellaneous utility functions -- anyth - one of the other *util.py modules. - """ - --import sys, os, string, re -+import os -+import re -+import imp -+import sys -+import string - from distutils.errors import DistutilsPlatformError - from distutils.dep_util import newer - from distutils.spawn import spawn -@@ -415,9 +419,9 @@ def byte_compile (py_files, - verbose=1, dry_run=0, - direct=None): - """Byte-compile a collection of Python source files to either .pyc -- or .pyo files in the same directory. 'py_files' is a list of files -- to compile; any files that don't end in ".py" are silently skipped. -- 'optimize' must be one of the following: -+ or .pyo files in a __pycache__ subdirectory. 'py_files' is a list -+ of files to compile; any files that don't end in ".py" are silently -+ skipped. 'optimize' must be one of the following: - 0 - don't optimize (generate .pyc) - 1 - normal optimization (like "python -O") - 2 - extra optimization (like "python -OO") -@@ -529,7 +533,10 @@ byte_compile(files, optimize=%r, force=% - # Terminology from the py_compile module: - # cfile - byte-compiled file - # dfile - purported source filename (same as 'file' by default) -- cfile = file + (__debug__ and "c" or "o") -+ if optimize >= 0: -+ cfile = imp.cache_from_source(file, debug_override=not optimize) -+ else: -+ cfile = imp.cache_from_source(file) - dfile = file - if prefix: - if file[:len(prefix)] != prefix: -diff -up Python-3.2.2/Misc/ACKS.issue11254 Python-3.2.2/Misc/ACKS ---- Python-3.2.2/Misc/ACKS.issue11254 2011-09-03 12:16:45.000000000 -0400 -+++ Python-3.2.2/Misc/ACKS 2011-10-10 17:01:23.168196842 -0400 -@@ -715,6 +715,7 @@ Pierre Quentel - Brian Quinlan - Anders Qvist - Burton Radons -+Jeff Ramnani - Brodie Rao - Antti Rasinen - Sridhar Ratnakumar diff --git a/00152-fix-test-gdb-regex.patch b/00152-fix-test-gdb-regex.patch new file mode 100644 index 0000000..4e31c2e --- /dev/null +++ b/00152-fix-test-gdb-regex.patch @@ -0,0 +1,11 @@ +--- Lib/test/test_gdb.py.old 2012-04-11 19:35:13.512681203 -0400 ++++ Lib/test/test_gdb.py 2012-04-11 19:39:52.567192540 -0400 +@@ -159,7 +159,7 @@ class DebuggerTests(unittest.TestCase): + # gdb can insert additional '\n' and space characters in various places + # in its output, depending on the width of the terminal it's connected + # to (using its "wrap_here" function) +- m = re.match('.*#0\s+builtin_id\s+\(self\=.*,\s+v=\s*(.*?)\)\s+at\s+Python/bltinmodule.c.*', ++ m = re.match('.*#0\s+builtin_id\s+\(self\=.*,\s+v=\s*(.*?)\)\s+at\s+\S*Python/bltinmodule.c.*', + gdb_output, re.DOTALL) + if not m: + self.fail('Unexpected gdb output: %r\n%s' % (gdb_output, gdb_output)) diff --git a/python-3.2.1-lib64.patch b/python-3.2.1-lib64.patch deleted file mode 100644 index 8b15e3e..0000000 --- a/python-3.2.1-lib64.patch +++ /dev/null @@ -1,200 +0,0 @@ -diff -up Python-3.2.1/Lib/distutils/command/install.py.lib64 Python-3.2.1/Lib/distutils/command/install.py ---- Python-3.2.1/Lib/distutils/command/install.py.lib64 2011-07-09 02:58:46.000000000 -0400 -+++ Python-3.2.1/Lib/distutils/command/install.py 2011-07-11 11:20:45.980426001 -0400 -@@ -47,14 +47,14 @@ else: - INSTALL_SCHEMES = { - 'unix_prefix': { - 'purelib': '$base/lib/python$py_version_short/site-packages', -- 'platlib': '$platbase/lib/python$py_version_short/site-packages', -+ 'platlib': '$platbase/lib64/python$py_version_short/site-packages', - 'headers': '$base/include/python$py_version_short$abiflags/$dist_name', - 'scripts': '$base/bin', - 'data' : '$base', - }, - 'unix_home': { - 'purelib': '$base/lib/python', -- 'platlib': '$base/lib/python', -+ 'platlib': '$base/lib64/python', - 'headers': '$base/include/python/$dist_name', - 'scripts': '$base/bin', - 'data' : '$base', -diff -up Python-3.2.1/Lib/distutils/sysconfig.py.lib64 Python-3.2.1/Lib/distutils/sysconfig.py ---- Python-3.2.1/Lib/distutils/sysconfig.py.lib64 2011-07-09 02:58:47.000000000 -0400 -+++ Python-3.2.1/Lib/distutils/sysconfig.py 2011-07-11 11:20:45.981426001 -0400 -@@ -124,8 +124,12 @@ def get_python_lib(plat_specific=0, stan - prefix = plat_specific and EXEC_PREFIX or PREFIX - - if os.name == "posix": -+ if plat_specific or standard_lib: -+ lib = "lib64" -+ else: -+ lib = "lib" - libpython = os.path.join(prefix, -- "lib", "python" + get_python_version()) -+ lib, "python" + get_python_version()) - if standard_lib: - return libpython - else: -diff -up Python-3.2.1/Lib/site.py.lib64 Python-3.2.1/Lib/site.py ---- Python-3.2.1/Lib/site.py.lib64 2011-07-09 02:58:49.000000000 -0400 -+++ Python-3.2.1/Lib/site.py 2011-07-11 11:20:45.982426001 -0400 -@@ -285,12 +285,16 @@ def getsitepackages(): - if sys.platform in ('os2emx', 'riscos'): - sitepackages.append(os.path.join(prefix, "Lib", "site-packages")) - elif os.sep == '/': -+ sitepackages.append(os.path.join(prefix, "lib64", -+ "python" + sys.version[:3], -+ "site-packages")) - sitepackages.append(os.path.join(prefix, "lib", - "python" + sys.version[:3], - "site-packages")) - sitepackages.append(os.path.join(prefix, "lib", "site-python")) - else: - sitepackages.append(prefix) -+ sitepackages.append(os.path.join(prefix, "lib64", "site-packages")) - sitepackages.append(os.path.join(prefix, "lib", "site-packages")) - if sys.platform == "darwin": - # for framework builds *only* we add the standard Apple -diff -up Python-3.2.1/Lib/sysconfig.py.lib64 Python-3.2.1/Lib/sysconfig.py ---- Python-3.2.1/Lib/sysconfig.py.lib64 2011-07-09 02:58:49.000000000 -0400 -+++ Python-3.2.1/Lib/sysconfig.py 2011-07-11 11:20:45.982426001 -0400 -@@ -21,10 +21,10 @@ __all__ = [ - - _INSTALL_SCHEMES = { - 'posix_prefix': { -- 'stdlib': '{base}/lib/python{py_version_short}', -- 'platstdlib': '{platbase}/lib/python{py_version_short}', -+ 'stdlib': '{base}/lib64/python{py_version_short}', -+ 'platstdlib': '{platbase}/lib64/python{py_version_short}', - 'purelib': '{base}/lib/python{py_version_short}/site-packages', -- 'platlib': '{platbase}/lib/python{py_version_short}/site-packages', -+ 'platlib': '{platbase}/lib64/python{py_version_short}/site-packages', - 'include': - '{base}/include/python{py_version_short}{abiflags}', - 'platinclude': -@@ -81,10 +81,10 @@ _INSTALL_SCHEMES = { - 'data' : '{userbase}', - }, - 'posix_user': { -- 'stdlib': '{userbase}/lib/python{py_version_short}', -- 'platstdlib': '{userbase}/lib/python{py_version_short}', -+ 'stdlib': '{userbase}/lib64/python{py_version_short}', -+ 'platstdlib': '{userbase}/lib64/python{py_version_short}', - 'purelib': '{userbase}/lib/python{py_version_short}/site-packages', -- 'platlib': '{userbase}/lib/python{py_version_short}/site-packages', -+ 'platlib': '{userbase}/lib64/python{py_version_short}/site-packages', - 'include': '{userbase}/include/python{py_version_short}', - 'scripts': '{userbase}/bin', - 'data' : '{userbase}', -diff -up Python-3.2.1/Lib/test/test_site.py.lib64 Python-3.2.1/Lib/test/test_site.py ---- Python-3.2.1/Lib/test/test_site.py.lib64 2011-07-09 02:58:51.000000000 -0400 -+++ Python-3.2.1/Lib/test/test_site.py 2011-07-11 11:20:45.983426001 -0400 -@@ -222,12 +222,15 @@ class HelperFunctionsTests(unittest.Test - wanted = os.path.join('xoxo', 'Lib', 'site-packages') - self.assertEqual(dirs[0], wanted) - elif os.sep == '/': -- self.assertEqual(len(dirs), 2) -- wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], -+ self.assertEqual(len(dirs), 3) -+ wanted = os.path.join('xoxo', 'lib64', 'python' + sys.version[:3], - 'site-packages') - self.assertEqual(dirs[0], wanted) -- wanted = os.path.join('xoxo', 'lib', 'site-python') -+ wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], -+ 'site-packages') - self.assertEqual(dirs[1], wanted) -+ wanted = os.path.join('xoxo', 'lib', 'site-python') -+ self.assertEqual(dirs[2], wanted) - else: - self.assertEqual(len(dirs), 2) - self.assertEqual(dirs[0], 'xoxo') -diff -up Python-3.2.1/Makefile.pre.in.lib64 Python-3.2.1/Makefile.pre.in ---- Python-3.2.1/Makefile.pre.in.lib64 2011-07-11 11:20:45.974426000 -0400 -+++ Python-3.2.1/Makefile.pre.in 2011-07-11 11:20:45.984426001 -0400 -@@ -106,7 +106,7 @@ LIBDIR= @libdir@ - MANDIR= @mandir@ - INCLUDEDIR= @includedir@ - CONFINCLUDEDIR= $(exec_prefix)/include --SCRIPTDIR= $(prefix)/lib -+SCRIPTDIR= $(prefix)/lib64 - ABIFLAGS= @ABIFLAGS@ - - # Detailed destination directories -diff -up Python-3.2.1/Modules/getpath.c.lib64 Python-3.2.1/Modules/getpath.c ---- Python-3.2.1/Modules/getpath.c.lib64 2011-07-09 02:58:54.000000000 -0400 -+++ Python-3.2.1/Modules/getpath.c 2011-07-11 11:27:44.596425999 -0400 -@@ -122,8 +122,8 @@ - #endif - - #ifndef PYTHONPATH --#define PYTHONPATH PREFIX "/lib/python" VERSION ":" \ -- EXEC_PREFIX "/lib/python" VERSION "/lib-dynload" -+#define PYTHONPATH PREFIX "/lib64/python" VERSION ":" \ -+ EXEC_PREFIX "/lib64/python" VERSION "/lib-dynload" - #endif - - #ifndef LANDMARK -@@ -135,7 +135,7 @@ static wchar_t exec_prefix[MAXPATHLEN+1] - static wchar_t progpath[MAXPATHLEN+1]; - static wchar_t *module_search_path = NULL; - static int module_search_path_malloced = 0; --static wchar_t *lib_python = L"lib/python" VERSION; -+static wchar_t *lib_python = L"lib64/python" VERSION; - - static void - reduce(wchar_t *dir) -@@ -583,7 +583,7 @@ calculate_path(void) - } - else - wcsncpy(zip_path, _prefix, MAXPATHLEN); -- joinpath(zip_path, L"lib/python00.zip"); -+ joinpath(zip_path, L"lib64/python00.zip"); - bufsz = wcslen(zip_path); /* Replace "00" with version */ - zip_path[bufsz - 6] = VERSION[0]; - zip_path[bufsz - 5] = VERSION[2]; -@@ -593,7 +593,7 @@ calculate_path(void) - fprintf(stderr, - "Could not find platform dependent libraries \n"); - wcsncpy(exec_prefix, _exec_prefix, MAXPATHLEN); -- joinpath(exec_prefix, L"lib/lib-dynload"); -+ joinpath(exec_prefix, L"lib64/lib-dynload"); - } - /* If we found EXEC_PREFIX do *not* reduce it! (Yet.) */ - -diff -up Python-3.2.1/setup.py.lib64 Python-3.2.1/setup.py ---- Python-3.2.1/setup.py.lib64 2011-07-09 02:58:56.000000000 -0400 -+++ Python-3.2.1/setup.py 2011-07-11 11:28:00.193426004 -0400 -@@ -396,7 +396,7 @@ class PyBuildExt(build_ext): - # Ensure that /usr/local is always used, but the local build - # directories (i.e. '.' and 'Include') must be first. See issue - # 10520. -- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') -+ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib64') - add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') - self.add_multiarch_paths() - -@@ -643,11 +643,11 @@ class PyBuildExt(build_ext): - elif curses_library: - readline_libs.append(curses_library) - elif self.compiler.find_library_file(lib_dirs + -- ['/usr/lib/termcap'], -+ ['/usr/lib64/termcap'], - 'termcap'): - readline_libs.append('termcap') - exts.append( Extension('readline', ['readline.c'], -- library_dirs=['/usr/lib/termcap'], -+ library_dirs=['/usr/lib64/termcap'], - extra_link_args=readline_extra_link_args, - libraries=readline_libs) ) - else: -@@ -684,8 +684,8 @@ class PyBuildExt(build_ext): - if krb5_h: - ssl_incs += krb5_h - ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs, -- ['/usr/local/ssl/lib', -- '/usr/contrib/ssl/lib/' -+ ['/usr/local/ssl/lib64', -+ '/usr/contrib/ssl/lib64/' - ] ) - - if (ssl_incs is not None and diff --git a/python-3.2.3-lib64.patch b/python-3.2.3-lib64.patch new file mode 100644 index 0000000..5c3cf13 --- /dev/null +++ b/python-3.2.3-lib64.patch @@ -0,0 +1,200 @@ +diff -up Python-3.2.3/Lib/distutils/command/install.py.lib64 Python-3.2.3/Lib/distutils/command/install.py +--- Python-3.2.3/Lib/distutils/command/install.py.lib64 2012-04-11 02:54:02.000000000 -0400 ++++ Python-3.2.3/Lib/distutils/command/install.py 2012-04-11 19:01:19.727107020 -0400 +@@ -45,14 +45,14 @@ else: + INSTALL_SCHEMES = { + 'unix_prefix': { + 'purelib': '$base/lib/python$py_version_short/site-packages', +- 'platlib': '$platbase/lib/python$py_version_short/site-packages', ++ 'platlib': '$platbase/lib64/python$py_version_short/site-packages', + 'headers': '$base/include/python$py_version_short$abiflags/$dist_name', + 'scripts': '$base/bin', + 'data' : '$base', + }, + 'unix_home': { + 'purelib': '$base/lib/python', +- 'platlib': '$base/lib/python', ++ 'platlib': '$base/lib64/python', + 'headers': '$base/include/python/$dist_name', + 'scripts': '$base/bin', + 'data' : '$base', +diff -up Python-3.2.3/Lib/distutils/sysconfig.py.lib64 Python-3.2.3/Lib/distutils/sysconfig.py +--- Python-3.2.3/Lib/distutils/sysconfig.py.lib64 2012-04-11 02:54:02.000000000 -0400 ++++ Python-3.2.3/Lib/distutils/sysconfig.py 2012-04-11 19:01:19.727107020 -0400 +@@ -122,8 +122,12 @@ def get_python_lib(plat_specific=0, stan + prefix = plat_specific and EXEC_PREFIX or PREFIX + + if os.name == "posix": ++ if plat_specific or standard_lib: ++ lib = "lib64" ++ else: ++ lib = "lib" + libpython = os.path.join(prefix, +- "lib", "python" + get_python_version()) ++ lib, "python" + get_python_version()) + if standard_lib: + return libpython + else: +diff -up Python-3.2.3/Lib/site.py.lib64 Python-3.2.3/Lib/site.py +--- Python-3.2.3/Lib/site.py.lib64 2012-04-11 02:54:03.000000000 -0400 ++++ Python-3.2.3/Lib/site.py 2012-04-11 19:01:19.728107008 -0400 +@@ -285,12 +285,16 @@ def getsitepackages(): + if sys.platform in ('os2emx', 'riscos'): + sitepackages.append(os.path.join(prefix, "Lib", "site-packages")) + elif os.sep == '/': ++ sitepackages.append(os.path.join(prefix, "lib64", ++ "python" + sys.version[:3], ++ "site-packages")) + sitepackages.append(os.path.join(prefix, "lib", + "python" + sys.version[:3], + "site-packages")) + sitepackages.append(os.path.join(prefix, "lib", "site-python")) + else: + sitepackages.append(prefix) ++ sitepackages.append(os.path.join(prefix, "lib64", "site-packages")) + sitepackages.append(os.path.join(prefix, "lib", "site-packages")) + if sys.platform == "darwin": + # for framework builds *only* we add the standard Apple +diff -up Python-3.2.3/Lib/sysconfig.py.lib64 Python-3.2.3/Lib/sysconfig.py +--- Python-3.2.3/Lib/sysconfig.py.lib64 2012-04-11 02:54:03.000000000 -0400 ++++ Python-3.2.3/Lib/sysconfig.py 2012-04-11 19:01:19.728107008 -0400 +@@ -21,10 +21,10 @@ __all__ = [ + + _INSTALL_SCHEMES = { + 'posix_prefix': { +- 'stdlib': '{base}/lib/python{py_version_short}', +- 'platstdlib': '{platbase}/lib/python{py_version_short}', ++ 'stdlib': '{base}/lib64/python{py_version_short}', ++ 'platstdlib': '{platbase}/lib64/python{py_version_short}', + 'purelib': '{base}/lib/python{py_version_short}/site-packages', +- 'platlib': '{platbase}/lib/python{py_version_short}/site-packages', ++ 'platlib': '{platbase}/lib64/python{py_version_short}/site-packages', + 'include': + '{base}/include/python{py_version_short}{abiflags}', + 'platinclude': +@@ -81,10 +81,10 @@ _INSTALL_SCHEMES = { + 'data' : '{userbase}', + }, + 'posix_user': { +- 'stdlib': '{userbase}/lib/python{py_version_short}', +- 'platstdlib': '{userbase}/lib/python{py_version_short}', ++ 'stdlib': '{userbase}/lib64/python{py_version_short}', ++ 'platstdlib': '{userbase}/lib64/python{py_version_short}', + 'purelib': '{userbase}/lib/python{py_version_short}/site-packages', +- 'platlib': '{userbase}/lib/python{py_version_short}/site-packages', ++ 'platlib': '{userbase}/lib64/python{py_version_short}/site-packages', + 'include': '{userbase}/include/python{py_version_short}', + 'scripts': '{userbase}/bin', + 'data' : '{userbase}', +diff -up Python-3.2.3/Lib/test/test_site.py.lib64 Python-3.2.3/Lib/test/test_site.py +--- Python-3.2.3/Lib/test/test_site.py.lib64 2012-04-11 02:54:05.000000000 -0400 ++++ Python-3.2.3/Lib/test/test_site.py 2012-04-11 19:02:01.413585869 -0400 +@@ -236,12 +236,15 @@ class HelperFunctionsTests(unittest.Test + self.assertEqual(dirs[2], wanted) + elif os.sep == '/': + # OS X non-framwework builds, Linux, FreeBSD, etc +- self.assertEqual(len(dirs), 2) +- wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], ++ self.assertEqual(len(dirs), 3) ++ wanted = os.path.join('xoxo', 'lib64', 'python' + sys.version[:3], + 'site-packages') + self.assertEqual(dirs[0], wanted) +- wanted = os.path.join('xoxo', 'lib', 'site-python') ++ wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], ++ 'site-packages') + self.assertEqual(dirs[1], wanted) ++ wanted = os.path.join('xoxo', 'lib', 'site-python') ++ self.assertEqual(dirs[2], wanted) + else: + # other platforms + self.assertEqual(len(dirs), 2) +diff -up Python-3.2.3/Makefile.pre.in.lib64 Python-3.2.3/Makefile.pre.in +--- Python-3.2.3/Makefile.pre.in.lib64 2012-04-11 19:01:19.722107084 -0400 ++++ Python-3.2.3/Makefile.pre.in 2012-04-11 19:01:19.729106996 -0400 +@@ -106,7 +106,7 @@ LIBDIR= @libdir@ + MANDIR= @mandir@ + INCLUDEDIR= @includedir@ + CONFINCLUDEDIR= $(exec_prefix)/include +-SCRIPTDIR= $(prefix)/lib ++SCRIPTDIR= $(prefix)/lib64 + ABIFLAGS= @ABIFLAGS@ + + # Detailed destination directories +diff -up Python-3.2.3/Modules/getpath.c.lib64 Python-3.2.3/Modules/getpath.c +--- Python-3.2.3/Modules/getpath.c.lib64 2012-04-11 02:54:07.000000000 -0400 ++++ Python-3.2.3/Modules/getpath.c 2012-04-11 19:01:19.729106996 -0400 +@@ -122,8 +122,8 @@ + #endif + + #ifndef PYTHONPATH +-#define PYTHONPATH PREFIX "/lib/python" VERSION ":" \ +- EXEC_PREFIX "/lib/python" VERSION "/lib-dynload" ++#define PYTHONPATH PREFIX "/lib64/python" VERSION ":" \ ++ EXEC_PREFIX "/lib64/python" VERSION "/lib-dynload" + #endif + + #ifndef LANDMARK +@@ -135,7 +135,7 @@ static wchar_t exec_prefix[MAXPATHLEN+1] + static wchar_t progpath[MAXPATHLEN+1]; + static wchar_t *module_search_path = NULL; + static int module_search_path_malloced = 0; +-static wchar_t *lib_python = L"lib/python" VERSION; ++static wchar_t *lib_python = L"lib64/python" VERSION; + + static void + reduce(wchar_t *dir) +@@ -583,7 +583,7 @@ calculate_path(void) + } + else + wcsncpy(zip_path, _prefix, MAXPATHLEN); +- joinpath(zip_path, L"lib/python00.zip"); ++ joinpath(zip_path, L"lib64/python00.zip"); + bufsz = wcslen(zip_path); /* Replace "00" with version */ + zip_path[bufsz - 6] = VERSION[0]; + zip_path[bufsz - 5] = VERSION[2]; +@@ -593,7 +593,7 @@ calculate_path(void) + fprintf(stderr, + "Could not find platform dependent libraries \n"); + wcsncpy(exec_prefix, _exec_prefix, MAXPATHLEN); +- joinpath(exec_prefix, L"lib/lib-dynload"); ++ joinpath(exec_prefix, L"lib64/lib-dynload"); + } + /* If we found EXEC_PREFIX do *not* reduce it! (Yet.) */ + +diff -up Python-3.2.3/setup.py.lib64 Python-3.2.3/setup.py +--- Python-3.2.3/setup.py.lib64 2012-04-11 02:54:08.000000000 -0400 ++++ Python-3.2.3/setup.py 2012-04-11 19:01:19.730106984 -0400 +@@ -396,7 +396,7 @@ class PyBuildExt(build_ext): + # Ensure that /usr/local is always used, but the local build + # directories (i.e. '.' and 'Include') must be first. See issue + # 10520. +- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') ++ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib64') + add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') + self.add_multiarch_paths() + +@@ -643,11 +643,11 @@ class PyBuildExt(build_ext): + elif curses_library: + readline_libs.append(curses_library) + elif self.compiler.find_library_file(lib_dirs + +- ['/usr/lib/termcap'], ++ ['/usr/lib64/termcap'], + 'termcap'): + readline_libs.append('termcap') + exts.append( Extension('readline', ['readline.c'], +- library_dirs=['/usr/lib/termcap'], ++ library_dirs=['/usr/lib64/termcap'], + extra_link_args=readline_extra_link_args, + libraries=readline_libs) ) + else: +@@ -684,8 +684,8 @@ class PyBuildExt(build_ext): + if krb5_h: + ssl_incs += krb5_h + ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs, +- ['/usr/local/ssl/lib', +- '/usr/contrib/ssl/lib/' ++ ['/usr/local/ssl/lib64', ++ '/usr/contrib/ssl/lib64/' + ] ) + + if (ssl_incs is not None and diff --git a/python3.spec b/python3.spec index 46112d6..695cd60 100644 --- a/python3.spec +++ b/python3.spec @@ -121,8 +121,8 @@ # ================== Summary: Version 3 of the Python programming language aka Python 3000 Name: python3 -Version: %{pybasever}.2 -Release: 13%{?dist} +Version: %{pybasever}.3 +Release: 1%{?dist} License: Python Group: Development/Languages @@ -224,7 +224,7 @@ Patch3: python-3.2b2-remove-mimeaudio-tests.patch # dmalcolm Patch55: 00055-systemtap.patch -Patch102: python-3.2.1-lib64.patch +Patch102: python-3.2.3-lib64.patch # Only used when "%{_lib}" == "lib64" # Another lib64 fix, for distutils/tests/test_install.py; not upstream: @@ -358,14 +358,11 @@ Patch146: 00146-hashlib-fips.patch # Not yet sent upstream Patch147: 00147-add-debug-malloc-stats.patch -# Cherrypick fix for dbm version detection to cope with gdbm-1.9's magic values -# Taken from upstream http://bugs.python.org/issue13007 (rhbz#742242) -Patch148: 00148-gdbm-1.9-magic-values.patch +# Upstream as of Python 3.2.3: +# Patch148: 00148-gdbm-1.9-magic-values.patch -# Cherrypick fix for distutils not using __pycache__ when byte-compiling files -# Based on upstream http://bugs.python.org/issue11254 (rhbz#722578) -# (upstream commits 27a36b05caed and 651e84363001): -Patch149: 00149-backport-issue11254-pycache-bytecompilation-fix.patch +# Upstream as of Python 3.2.3: +# Patch149: 00149-backport-issue11254-pycache-bytecompilation-fix.patch # temporarily disable rAssertAlmostEqual in test_cmath on PPC (bz #750811) # caused by a glibc bug. This patch can be removed when we have a glibc with @@ -373,6 +370,14 @@ Patch149: 00149-backport-issue11254-pycache-bytecompilation-fix.patch # http://sourceware.org/bugzilla/show_bug.cgi?id=13472 Patch150: 00150-disable-rAssertAlmostEqual-cmath-on-ppc.patch +# python.spec had: +# Patch151: 00151-fork-deadlock.patch + +# Fix a regex in test_gdb so that it doesn't choke when gdb provides a full +# path to Python/bltinmodule.c: +Patch152: 00152-fix-test-gdb-regex.patch + + # (New patches go here ^^^) # # When adding new patches to "python" and "python3" in Fedora 17 onwards, @@ -583,11 +588,13 @@ done # 00145: not for python3 %patch146 -p1 %patch147 -p1 -%patch148 -p1 -%patch149 -p1 +# 00148: upstream as of Python 3.2.3 +# 00149: upstream as of Python 3.2.3 %ifarch ppc ppc64 %patch150 -p1 %endif +# 00151: not for python3 +%patch152 -p0 # Currently (2010-01-15), http://docs.python.org/library is for 2.6, and there # are many differences between 2.6 and the Python 3 library. @@ -1410,6 +1417,10 @@ rm -fr %{buildroot} # ====================================================== %changelog +* Wed Apr 11 2012 David Malcolm - 3.2.3-1 +- 3.2.3; refresh patch 102 (lib64); drop upstream patches 148 (gdbm magic +values), 149 (__pycache__ fix); add patch 152 (test_gdb regex) + * Thu Feb 9 2012 Thomas Spura - 3.2.2-13 - use newly installed python for byte compiling (now for real) diff --git a/sources b/sources index fd9f0fc..9d0aae5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3720ce9460597e49264bbb63b48b946d Python-3.2.2.tar.xz +187564726f2c1473d301c586acc24847 Python-3.2.3.tar.xz