From 64fdc98601329cc7f6b6921e354c030a0f4ddacf80e3ae943f25cdd8414c5967 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Fri, 7 Aug 2009 20:04:34 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python?expand=0&rev=36 --- ...tilib.patch => Python-2.6.2-multilib.patch | 170 +++++++++--------- _local.pth | 2 +- macros.python | 3 + python-2.6.2-test_distutils.patch | 16 ++ python-base.changes | 25 +++ python-base.spec | 13 +- python-doc.spec | 2 +- python.changes | 5 + python.spec | 4 +- 9 files changed, 148 insertions(+), 92 deletions(-) rename Python-2.6b1-multilib.patch => Python-2.6.2-multilib.patch (69%) create mode 100644 python-2.6.2-test_distutils.patch diff --git a/Python-2.6b1-multilib.patch b/Python-2.6.2-multilib.patch similarity index 69% rename from Python-2.6b1-multilib.patch rename to Python-2.6.2-multilib.patch index f4d91f2..40c1ca2 100644 --- a/Python-2.6b1-multilib.patch +++ b/Python-2.6.2-multilib.patch @@ -1,6 +1,8 @@ ---- Python-2.6b1/Include/pythonrun.h -+++ Python-2.6b1/Include/pythonrun.h -@@ -108,6 +108,8 @@ +Index: Python-2.6.2/Include/pythonrun.h +=================================================================== +--- Python-2.6.2.orig/Include/pythonrun.h ++++ Python-2.6.2/Include/pythonrun.h +@@ -108,6 +108,8 @@ PyAPI_FUNC(char *) Py_GetPath(void); /* In their own files */ PyAPI_FUNC(const char *) Py_GetVersion(void); PyAPI_FUNC(const char *) Py_GetPlatform(void); @@ -9,9 +11,11 @@ PyAPI_FUNC(const char *) Py_GetCopyright(void); PyAPI_FUNC(const char *) Py_GetCompiler(void); PyAPI_FUNC(const char *) Py_GetBuildInfo(void); ---- Python-2.6b1/Lib/distutils/command/install.py -+++ Python-2.6b1/Lib/distutils/command/install.py -@@ -22,6 +22,8 @@ +Index: Python-2.6.2/Lib/distutils/command/install.py +=================================================================== +--- Python-2.6.2.orig/Lib/distutils/command/install.py ++++ Python-2.6.2/Lib/distutils/command/install.py +@@ -22,6 +22,8 @@ from site import USER_BASE from site import USER_SITE @@ -20,68 +24,38 @@ if sys.version < "2.2": WINDOWS_SCHEME = { 'purelib': '$base', -@@ -41,15 +43,15 @@ - +@@ -42,7 +44,7 @@ else: INSTALL_SCHEMES = { 'unix_prefix': { -- 'purelib': '$base/lib/python$py_version_short/site-packages', + 'purelib': '$base/lib/python$py_version_short/site-packages', - 'platlib': '$platbase/lib/python$py_version_short/site-packages', -+ 'purelib': '$base/'+libname+'/python$py_version_short/site-packages', + 'platlib': '$platbase/'+libname+'/python$py_version_short/site-packages', 'headers': '$base/include/python$py_version_short/$dist_name', 'scripts': '$base/bin', 'data' : '$base', - }, - 'unix_home': { -- 'purelib': '$base/lib/python', -- 'platlib': '$base/lib/python', -+ 'purelib': '$base/'+libname+'/python', -+ 'platlib': '$base/'+libname+'/python', - 'headers': '$base/include/python/$dist_name', - 'scripts': '$base/bin', - 'data' : '$base', ---- Python-2.6b1/Lib/distutils/sysconfig.py -+++ Python-2.6b1/Lib/distutils/sysconfig.py -@@ -116,7 +116,7 @@ +Index: Python-2.6.2/Lib/distutils/sysconfig.py +=================================================================== +--- Python-2.6.2.orig/Lib/distutils/sysconfig.py ++++ Python-2.6.2/Lib/distutils/sysconfig.py +@@ -115,8 +115,11 @@ def get_python_lib(plat_specific=0, stan + prefix = plat_specific and EXEC_PREFIX or PREFIX if os.name == "posix": - libpython = os.path.join(prefix, +- libpython = os.path.join(prefix, - "lib", "python" + get_python_version()) -+ sys.lib, "python" + get_python_version()) ++ if plat_specific or standard_lib: ++ lib = sys.lib ++ else: ++ lib = "lib" ++ libpython = os.path.join(prefix, lib, "python" + get_python_version()) if standard_lib: return libpython else: ---- Python-2.6b1/Lib/distutils/tests/test_install.py -+++ Python-2.6b1/Lib/distutils/tests/test_install.py -@@ -1,6 +1,7 @@ - """Tests for distutils.command.install.""" - - import os -+import sys - import unittest - - from distutils.command.install import install -@@ -23,7 +24,7 @@ - dist.script_name = os.path.join(builddir, "setup.py") - dist.command_obj["build"] = support.DummyCommand( - build_base=builddir, -- build_lib=os.path.join(builddir, "lib"), -+ build_lib=os.path.join(builddir, sys.lib), - ) - - cmd = install(dist) -@@ -38,7 +39,7 @@ - expected = os.path.normpath(expected) - self.assertEqual(got, expected) - -- libdir = os.path.join(destination, "lib", "python") -+ libdir = os.path.join(destination, sys.lib, "python") - check_path(cmd.install_lib, libdir) - check_path(cmd.install_platlib, libdir) - check_path(cmd.install_purelib, libdir) ---- Python-2.6b1/Lib/pydoc.py -+++ Python-2.6b1/Lib/pydoc.py -@@ -347,7 +347,7 @@ +Index: Python-2.6.2/Lib/pydoc.py +=================================================================== +--- Python-2.6.2.orig/Lib/pydoc.py ++++ Python-2.6.2/Lib/pydoc.py +@@ -350,7 +350,7 @@ class Doc: docloc = os.environ.get("PYTHONDOCS", "http://docs.python.org/library") @@ -90,9 +64,11 @@ "python"+sys.version[0:3]) if (isinstance(object, type(os)) and (object.__name__ in ('errno', 'exceptions', 'gc', 'imp', ---- Python-2.6b1/Lib/site.py -+++ Python-2.6b1/Lib/site.py -@@ -265,13 +265,13 @@ +Index: Python-2.6.2/Lib/site.py +=================================================================== +--- Python-2.6.2.orig/Lib/site.py ++++ Python-2.6.2/Lib/site.py +@@ -265,13 +265,19 @@ def addsitepackages(known_paths): if sys.platform in ('os2emx', 'riscos'): sitedirs.append(os.path.join(prefix, "Lib", "site-packages")) elif os.sep == '/': @@ -101,7 +77,13 @@ "python" + sys.version[:3], "site-packages")) - sitedirs.append(os.path.join(prefix, "lib", "site-python")) ++ if sys.lib != "lib": ++ sitedirs.append(os.path.join(prefix, "lib", ++ "python" + sys.version[:3], ++ "site-packages")) + sitedirs.append(os.path.join(prefix, sys.lib, "site-python")) ++ if sys.lib != "lib": ++ sitedirs.append(os.path.join(prefix, "lib", "site-python")) else: sitedirs.append(prefix) - sitedirs.append(os.path.join(prefix, "lib", "site-packages")) @@ -109,8 +91,10 @@ if sys.platform == "darwin": # for framework builds *only* we add the standard Apple ---- Python-2.6b1/Lib/test/test_dl.py -+++ Python-2.6b1/Lib/test/test_dl.py +Index: Python-2.6.2/Lib/test/test_dl.py +=================================================================== +--- Python-2.6.2.orig/Lib/test/test_dl.py ++++ Python-2.6.2/Lib/test/test_dl.py @@ -4,10 +4,11 @@ """ from test.test_support import verbose,TestSkipped, import_module @@ -125,9 +109,11 @@ ('/usr/bin/cygwin1.dll', 'getpid'), ('/usr/lib/libc.dylib', 'getpid'), ] ---- Python-2.6b1/Lib/trace.py -+++ Python-2.6b1/Lib/trace.py -@@ -757,10 +757,10 @@ +Index: Python-2.6.2/Lib/trace.py +=================================================================== +--- Python-2.6.2.orig/Lib/trace.py ++++ Python-2.6.2/Lib/trace.py +@@ -757,10 +757,10 @@ def main(argv=None): # should I also call expanduser? (after all, could use $HOME) s = s.replace("$prefix", @@ -140,9 +126,11 @@ "python" + sys.version[:3])) s = os.path.normpath(s) ignore_dirs.append(s) ---- Python-2.6b1/Makefile.pre.in -+++ Python-2.6b1/Makefile.pre.in -@@ -75,6 +75,8 @@ +Index: Python-2.6.2/Makefile.pre.in +=================================================================== +--- Python-2.6.2.orig/Makefile.pre.in ++++ Python-2.6.2/Makefile.pre.in +@@ -75,6 +75,8 @@ PY_CFLAGS= $(CFLAGS) $(CPPFLAGS) $(CFLAG # Machine-dependent subdirectories MACHDEP= @MACHDEP@ @@ -151,7 +139,7 @@ # Install prefix for architecture-independent files prefix= @prefix@ -@@ -505,6 +507,7 @@ +@@ -509,6 +511,7 @@ Modules/getpath.o: $(srcdir)/Modules/get -DEXEC_PREFIX='"$(exec_prefix)"' \ -DVERSION='"$(VERSION)"' \ -DVPATH='"$(VPATH)"' \ @@ -159,7 +147,7 @@ -o $@ $(srcdir)/Modules/getpath.c Modules/python.o: $(srcdir)/Modules/python.c -@@ -536,7 +539,7 @@ +@@ -540,7 +543,7 @@ $(AST_C): $(AST_ASDL) $(ASDLGEN_FILES) Python/compile.o Python/symtable.o: $(GRAMMAR_H) $(AST_H) Python/getplatform.o: $(srcdir)/Python/getplatform.c @@ -168,8 +156,10 @@ Python/importdl.o: $(srcdir)/Python/importdl.c $(CC) -c $(PY_CFLAGS) -I$(DLINCLDIR) -o $@ $(srcdir)/Python/importdl.c ---- Python-2.6b1/Modules/getpath.c -+++ Python-2.6b1/Modules/getpath.c +Index: Python-2.6.2/Modules/getpath.c +=================================================================== +--- Python-2.6.2.orig/Modules/getpath.c ++++ Python-2.6.2/Modules/getpath.c @@ -116,9 +116,11 @@ #define EXEC_PREFIX PREFIX #endif @@ -184,7 +174,7 @@ #endif #ifndef LANDMARK -@@ -129,7 +131,7 @@ +@@ -129,7 +131,7 @@ static char prefix[MAXPATHLEN+1]; static char exec_prefix[MAXPATHLEN+1]; static char progpath[MAXPATHLEN+1]; static char *module_search_path = NULL; @@ -193,9 +183,11 @@ static void reduce(char *dir) ---- Python-2.6b1/Python/getplatform.c -+++ Python-2.6b1/Python/getplatform.c -@@ -10,3 +10,23 @@ +Index: Python-2.6.2/Python/getplatform.c +=================================================================== +--- Python-2.6.2.orig/Python/getplatform.c ++++ Python-2.6.2/Python/getplatform.c +@@ -10,3 +10,23 @@ Py_GetPlatform(void) { return PLATFORM; } @@ -219,9 +211,11 @@ +{ + return LIB; +} ---- Python-2.6b1/Python/sysmodule.c -+++ Python-2.6b1/Python/sysmodule.c -@@ -1361,6 +1361,10 @@ +Index: Python-2.6.2/Python/sysmodule.c +=================================================================== +--- Python-2.6.2.orig/Python/sysmodule.c ++++ Python-2.6.2/Python/sysmodule.c +@@ -1379,6 +1379,10 @@ _PySys_Init(void) PyString_FromString(Py_GetCopyright())); SET_SYS_FROM_STRING("platform", PyString_FromString(Py_GetPlatform())); @@ -232,9 +226,11 @@ SET_SYS_FROM_STRING("executable", PyString_FromString(Py_GetProgramFullPath())); SET_SYS_FROM_STRING("prefix", ---- Python-2.6b1/configure.in -+++ Python-2.6b1/configure.in -@@ -569,6 +569,41 @@ +Index: Python-2.6.2/configure.in +=================================================================== +--- Python-2.6.2.orig/configure.in ++++ Python-2.6.2/configure.in +@@ -574,6 +574,41 @@ SunOS*) ;; esac @@ -276,9 +272,11 @@ AC_SUBST(LIBRARY) AC_MSG_CHECKING(LIBRARY) ---- Python-2.6b1/setup.py -+++ Python-2.6b1/setup.py -@@ -310,7 +310,7 @@ +Index: Python-2.6.2/setup.py +=================================================================== +--- Python-2.6.2.orig/setup.py ++++ Python-2.6.2/setup.py +@@ -310,7 +310,7 @@ class PyBuildExt(build_ext): def detect_modules(self): # Ensure that /usr/local is always used @@ -287,7 +285,7 @@ add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') # Add paths specified in the environment variables LDFLAGS and -@@ -361,8 +361,7 @@ +@@ -362,8 +362,7 @@ class PyBuildExt(build_ext): # if a file is found in one of those directories, it can # be assumed that no additional -I,-L directives are needed. lib_dirs = self.compiler.library_dirs + [ @@ -297,7 +295,7 @@ ] inc_dirs = self.compiler.include_dirs + ['/usr/include'] exts = [] -@@ -583,11 +582,11 @@ +@@ -585,11 +584,11 @@ class PyBuildExt(build_ext): elif self.compiler.find_library_file(lib_dirs, 'curses'): readline_libs.append('curses') elif self.compiler.find_library_file(lib_dirs + @@ -311,7 +309,7 @@ extra_link_args=readline_extra_link_args, libraries=readline_libs) ) else: -@@ -1540,18 +1539,17 @@ +@@ -1582,18 +1581,17 @@ class PyBuildExt(build_ext): # Check for various platform-specific directories if platform == 'sunos5': include_dirs.append('/usr/openwin/include') diff --git a/_local.pth b/_local.pth index d87354f..5c63323 100644 --- a/_local.pth +++ b/_local.pth @@ -1 +1 @@ -import site; import sys; site.addsitedir('/usr/local/' + sys.lib + '/python' + sys.version[:3] + '/site-packages',set()) +import site; import sys; site.addsitedir("/usr/local/" + sys.lib + "/python"+sys.version[:3]+"/site-packages", set()); sys.lib != "lib" and site.addsitedir("/usr/local/lib/python"+sys.version[:3]+"/site-packages", set()) diff --git a/macros.python b/macros.python index 517a8b7..6c6b478 100644 --- a/macros.python +++ b/macros.python @@ -13,3 +13,6 @@ python -O -c "import sys, os, compileall; br='%{buildroot}'; compileall.compile_ %py_requires(d) \ BuildRequires: /usr/bin/python %{-d:python-devel} \ PreReq: python = %{py_ver} + +%python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib();") +%python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(True);") diff --git a/python-2.6.2-test_distutils.patch b/python-2.6.2-test_distutils.patch new file mode 100644 index 0000000..c2608c6 --- /dev/null +++ b/python-2.6.2-test_distutils.patch @@ -0,0 +1,16 @@ +--- Lib/distutils/tests/test_bdist_wininst.py ++++ Lib/distutils/tests/test_bdist_wininst.py +@@ -5,11 +5,13 @@ + from distutils.dist import Distribution + from distutils.command.bdist_wininst import bdist_wininst + from distutils.tests import support ++from distutils import log + + class BuildWinInstTestCase(support.TempdirManager, + unittest.TestCase): + + def test_get_exe_bytes(self): ++ log.set_threshold(log.ERROR) + + # issue5731: command was broken on non-windows platforms + # this test makes sure it works now for every platform diff --git a/python-base.changes b/python-base.changes index ed6cdb3..9af61c8 100644 --- a/python-base.changes +++ b/python-base.changes @@ -1,3 +1,28 @@ +------------------------------------------------------------------- +Sun Aug 2 17:01:16 UTC 2009 - jansimon.moeller@opensuse.org + +- fix files section for ARM, as bz2.so isn't built on ARM. + +------------------------------------------------------------------- +Fri Jul 31 22:41:02 CEST 2009 - matejcik@suse.cz + +- added /usr/lib/python2.6{,/site-packages} to the package even if + it is on lib64 arch +- added %python_sitelib and %python_sitearch for fedora compatibility + +------------------------------------------------------------------- +Thu Jul 30 18:34:09 CEST 2009 - matejcik@suse.cz + +- fixed test in test_distutils suite that would generate a warning + when the log threshold was set too low by preceding tests + +------------------------------------------------------------------- +Wed Jul 29 16:09:32 CEST 2009 - matejcik@suse.cz + +- support noarch python packages (modified multilib patch + to differentiate between purelib and platlib, added /usr/lib + to search path in all cases + ------------------------------------------------------------------- Thu Jul 16 10:11:27 CEST 2009 - coolo@novell.com diff --git a/python-base.spec b/python-base.spec index 5e4b5f7..e116db0 100644 --- a/python-base.spec +++ b/python-base.spec @@ -33,7 +33,7 @@ Obsoletes: python-64bit # Summary: Python Interpreter base package Version: 2.6.2 -Release: 2 +Release: 3 %define tarname Python-%{version} Source0: %{tarname}.tar.bz2 Source1: macros.python @@ -42,12 +42,13 @@ Source13: distutils.cfg Source14: _local.pth Patch01: Python-2.3.3-dirs.patch Patch10: python-distutils-rpm-8.patch -Patch21: Python-2.6b1-multilib.patch +Patch21: Python-2.6.2-multilib.patch Patch25: python-2.6b1-canonicalize2.patch Patch31: python-2.5.2-fwrapv.patch Patch35: python-2.5.2-configure.patch Patch37: python-2.6rc2-https-proxy.patch Patch38: python-2.6-gettext-plurals.patch +Patch39: python-2.6.2-test_distutils.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %define python_version %(echo %{version} | head -c 3) Provides: %{name} = %{python_version} @@ -134,6 +135,7 @@ Authors: %patch35 %patch37 %patch38 +%patch39 # some cleanup find . -name .cvsignore -type f -print0 | xargs -0 rm -f find . -name CVS -type d -print0 | xargs -0 rm -rf @@ -213,6 +215,8 @@ install -m 644 %{S:13} ${RPM_BUILD_ROOT}%{_libdir}/python%{python_version}/distu install -m 644 %{S:14} ${RPM_BUILD_ROOT}%{_libdir}/python%{python_version}/site-packages install -d -m 755 ${RPM_BUILD_ROOT}/etc/rpm install -m 644 %{S:1} ${RPM_BUILD_ROOT}/etc/rpm +# make sure /usr/lib/python/site-packages exists even on lib64 machines +mkdir -p ${RPM_BUILD_ROOT}/usr/lib/python%{python_version}/site-packages ######################################## # some cleanups ######################################## @@ -293,6 +297,8 @@ rm -rf $RPM_BUILD_ROOT %dir %{_includedir}/python%{python_version} %{_includedir}/python%{python_version}/pyconfig.h %{_libdir}/python +%dir /usr/lib/python%{python_version} +%dir /usr/lib/python%{python_version}/site-packages %dir %{_libdir}/python%{python_version} %dir %{_libdir}/python%{python_version}/config %{_libdir}/python%{python_version}/config/Setup @@ -340,7 +346,10 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/python%{python_version}/lib-dynload/_weakref.so %{_libdir}/python%{python_version}/lib-dynload/array.so %{_libdir}/python%{python_version}/lib-dynload/binascii.so +#arm doesn't build this module +%ifnarch %arm %{_libdir}/python%{python_version}/lib-dynload/bz2.so +%endif %{_libdir}/python%{python_version}/lib-dynload/cPickle.so %{_libdir}/python%{python_version}/lib-dynload/cStringIO.so %{_libdir}/python%{python_version}/lib-dynload/cmath.so diff --git a/python-doc.spec b/python-doc.spec index be0e752..1d30d60 100644 --- a/python-doc.spec +++ b/python-doc.spec @@ -24,7 +24,7 @@ Group: Development/Languages/Python BuildRoot: %{_tmppath}/%{name}-%{version}-build Summary: Additional Package Documentation for Python. Version: 2.6 -Release: 12 +Release: 13 %define pyver 2.6.2 BuildArch: noarch %define tarname Python-%{pyver} diff --git a/python.changes b/python.changes index deabe08..3aba91e 100644 --- a/python.changes +++ b/python.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Jul 29 17:25:33 CEST 2009 - matejcik@suse.cz + +- renamed multilib patch to reflect the changes + ------------------------------------------------------------------- Thu Jul 16 10:11:27 CEST 2009 - coolo@novell.com diff --git a/python.spec b/python.spec index b14223c..2bfd1ae 100644 --- a/python.spec +++ b/python.spec @@ -35,7 +35,7 @@ Obsoletes: python-64bit Obsoletes: python-nothreads python21 python-elementtree python-sqlite Summary: Python Interpreter Version: 2.6.2 -Release: 2 +Release: 3 Requires: python-base = %{version} %define tarname Python-%{version} Source0: %{tarname}.tar.bz2 @@ -46,7 +46,7 @@ Source10: python.csh #Source11: testfiles.tar.bz2 # issues with copyrighted Unicode testing files Patch01: Python-2.3.3-dirs.patch -Patch21: Python-2.6b1-multilib.patch +Patch21: Python-2.6.2-multilib.patch Patch23: python-2.6b3-ssl-compat.patch Patch25: python-2.6b1-canonicalize2.patch Patch30: python-2.5.1-sqlite.patch