diff options
author | Michael Stahl <mstahl@redhat.com> | 2014-01-06 16:05:56 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2014-01-11 15:06:03 -0800 |
commit | 7be8b77602b3947f96adcef87bc14054c00484e8 (patch) | |
tree | 092730ed2c6a4b5ab87618ce31298b9c0c4b551b | |
parent | 950de3b92fbab4eee931973bb95170e205b16a4b (diff) |
fdo#73087: python3: upgrade to version 3.3.3
- drop obsolete/upstreamed patches:
python-3.3.0-ffi-clang.patch.1
python-3.3.0-15833.patch.1
one hunk of python-3.3.0-aix.patch.1 in fficonfig.py.in
Reviewed-on: https://gerrit.libreoffice.org/7278
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
(cherry picked from commit 45c537a1185dfca7e51229dde9e9220e5174bd57)
Conflicts:
external/python3/python-3.3.0-aix.patch.1
external/python3/python-3.3.0-elf-rpath.patch.1
external/python3/python-3.3.3-aix.patch.1
external/python3/python-3.3.3-elf-rpath.patch.1
python3/ExternalPackage_python3.mk
python3/UnpackedTarball_python3.mk
python3/python-3.3.0-15833.patch.1
python3/python-3.3.0-aix.patch.1
python3/python-3.3.0-elf-rpath.patch.1
python3/python-3.3.0-ffi-clang.patch.1
Reviewed-on: https://gerrit.libreoffice.org/7290
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
Conflicts:
download.lst
python3/ExternalPackage_python3.mk
python3/UnpackedTarball_python3.mk
python3/python-3.3.3-aix.patch.1
python3/python-3.3.3-elf-rpath.patch.1
Conflicts:
python3/UnpackedTarball_python3.mk
Change-Id: I12f0f78a172067986b63455847015ea2430a084c
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | download.lst | 2 | ||||
-rw-r--r-- | python3/UnpackedTarball_python3.mk | 9 | ||||
-rw-r--r-- | python3/i100492-freebsd.patch.1 | 2 | ||||
-rw-r--r-- | python3/python-3.3.0-15833.patch.1 | 25 | ||||
-rw-r--r-- | python3/python-3.3.0-ffi-clang.patch.1 | 40 | ||||
-rw-r--r-- | python3/python-3.3.0-gcc-4.8.patch.1 | 15 | ||||
-rw-r--r-- | python3/python-3.3.0-pythreadstate.patch.1 | 15 | ||||
-rw-r--r-- | python3/python-3.3.3-aix.patch.1 (renamed from python3/python-3.3.0-aix.patch.1) | 46 | ||||
-rw-r--r-- | python3/python-3.3.3-elf-rpath.patch.1 | 13 |
10 files changed, 74 insertions, 95 deletions
diff --git a/configure.ac b/configure.ac index 11316792f959..047696bed5fc 100644 --- a/configure.ac +++ b/configure.ac @@ -7555,7 +7555,7 @@ internal) SYSTEM_PYTHON=NO PYTHON_VERSION_MAJOR=3 PYTHON_VERSION_MINOR=3 - PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.0 + PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.3 BUILD_TYPE="$BUILD_TYPE PYTHON" # Embedded Python dies without Home set if test "$HOME" = ""; then diff --git a/download.lst b/download.lst index aa1f98c5782d..eda671f635e1 100644 --- a/download.lst +++ b/download.lst @@ -68,7 +68,7 @@ export ORCUS_TARBALL := 8755aac23317494a9028569374dc87b2-liborcus_0.3.0.tar.bz2 export PIXMAN_TARBALL := c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2 export PNG_TARBALL := 9e5d864bce8f06751bbd99962ecf4aad-libpng-1.5.10.tar.gz export POSTGRESQL_TARBALL := c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2 -export PYTHON_TARBALL := b3b2524f72409d919a4137826a870a8f-Python-3.3.0.tar.bz2 +export PYTHON_TARBALL := f3ebe34d4d8695bf889279b54673e10c-Python-3.3.3.tar.bz2 export RAPTOR_TARBALL := 284e768eeda0e2898b0d5bf7e26a016e-raptor-1.4.18.tar.gz export RASQAL_TARBALL := fca8706f2c4619e2fa3f8f42f8fc1e9d-rasqal-0.9.16.tar.gz export REDLAND_TARBALL := ca66e26082cab8bb817185a116db809b-redland-1.0.8.tar.gz diff --git a/python3/UnpackedTarball_python3.mk b/python3/UnpackedTarball_python3.mk index d8c0862324c7..9bf696138787 100644 --- a/python3/UnpackedTarball_python3.mk +++ b/python3/UnpackedTarball_python3.mk @@ -22,19 +22,20 @@ $(eval $(call gb_UnpackedTarball_fix_end_of_line,python3,\ $(eval $(call gb_UnpackedTarball_add_patches,python3,\ python3/i100492-freebsd.patch.1 \ python3/python-3.3.0-i42553.patch.2 \ - python3/python-3.3.0-aix.patch.1 \ + python3/python-3.3.3-aix.patch.1 \ python3/python-3.3.0-darwin.patch.1 \ python3/python-3.3.0-msvc2012.patch.1 \ python3/python-3.3.0-msvc-disable.patch.1 \ python3/python-3.3.0-msvc-x64.patch.1 \ python3/python-3.3.0-ssl.patch.1 \ python3/python-3.3.0-implicit-int.patch.1 \ - python3/python-3.3.0-ffi-clang.patch.1 \ + python3/python-3.3.0-gcc-4.8.patch.1 \ + python3/python-3.3.0-pythreadstate.patch.1 \ )) -ifneq ($(OS),WNT) +ifneq ($(filter DRAGONFLY FREEBSD LINUX NETBSD OPENBSD SOLARIS,$(OS)),) $(eval $(call gb_UnpackedTarball_add_patches,python3,\ - python3/python-3.3.0-15833.patch.1 \ + python3/python-3.3.3-elf-rpath.patch.1 \ )) endif diff --git a/python3/i100492-freebsd.patch.1 b/python3/i100492-freebsd.patch.1 index d797ac14f826..7189a7e81956 100644 --- a/python3/i100492-freebsd.patch.1 +++ b/python3/i100492-freebsd.patch.1 @@ -22,7 +22,7 @@ FreeBSD porting fixes, patch by maho@openoffice.org # on platforms known to behave badly. - platforms_to_skip = ('freebsd4', 'freebsd5', 'freebsd6', 'netbsd5', + platforms_to_skip = ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'netbsd5', - 'os2emx') + 'os2emx', 'hp-ux11') def _run_and_join(self, script): --- Python-3.3.0/Python/thread_pthread.h 2012-11-28 09:00:41.097955124 +0000 diff --git a/python3/python-3.3.0-15833.patch.1 b/python3/python-3.3.0-15833.patch.1 deleted file mode 100644 index 71cef94535b1..000000000000 --- a/python3/python-3.3.0-15833.patch.1 +++ /dev/null @@ -1,25 +0,0 @@ -iff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py ---- a/Lib/importlib/_bootstrap.py -+++ b/Lib/importlib/_bootstrap.py -@@ -1066,17 +1066,17 @@ class SourceFileLoader(FileLoader, Sourc - except FileExistsError: - # Probably another Python process already created the dir. - continue -- except PermissionError: -- # If can't get proper access, then just forget about writing -- # the data. -+ except OSError as exc: -+ # Could be a permission error, read-only filesystem: just forget -+ # about writing the data. -+ _verbose_message('could not create {!r}: {!r}', parent, exc) - return - try: - _write_atomic(path, data, _mode) - _verbose_message('created {!r}', path) -- except (PermissionError, FileExistsError): -- # Don't worry if you can't write bytecode or someone is writing -- # it at the same time. -- pass -+ except OSError as exc: -+ # Same as above: just don't write the bytecode. -+ _verbose_message('could not create {!r}: {!r}', path, exc) diff --git a/python3/python-3.3.0-ffi-clang.patch.1 b/python3/python-3.3.0-ffi-clang.patch.1 deleted file mode 100644 index 0dcbc42d13a4..000000000000 --- a/python3/python-3.3.0-ffi-clang.patch.1 +++ /dev/null @@ -1,40 +0,0 @@ -fix clang build problem: - -python3/Modules/_ctypes/libffi/src/x86/sysv.S:389:17: error: invalid variant ´rel´ -Patch by: Rafael Avila de Espindola <respindola at mozilla dot com> -https://417179.bugs.gentoo.org/attachment.cgi?id=313299 - -diff -ru python3.old/Modules/_ctypes/libffi/configure.ac python3/Modules/_ctypes/libffi/configure.ac ---- python3.old/Modules/_ctypes/libffi/configure.ac 2012-09-29 10:00:42.000000000 +0200 -+++ python3/Modules/_ctypes/libffi/configure.ac 2012-11-27 16:12:44.421564130 +0100 -@@ -303,10 +303,10 @@ - if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64; then - AC_CACHE_CHECK([assembler supports pc related relocs], - libffi_cv_as_x86_pcrel, [ -- libffi_cv_as_x86_pcrel=yes -+ libffi_cv_as_x86_pcrel=no - echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s -- if $CC $CFLAGS -c conftest.s 2>&1 | $EGREP -i 'illegal|warning' > /dev/null; then -- libffi_cv_as_x86_pcrel=no -+ if $CC $CFLAGS -c conftest.s > /dev/null; then -+ libffi_cv_as_x86_pcrel=yes - fi - ]) - if test "x$libffi_cv_as_x86_pcrel" = xyes; then -diff -ru python3.old/Modules/_ctypes/libffi/configure python3/Modules/_ctypes/libffi/configure ---- python3.old/Modules/_ctypes/libffi/configure 2012-09-29 10:00:42.000000000 +0200 -+++ python3/Modules/_ctypes/libffi/configure 2012-11-27 16:12:44.420564130 +0100 -@@ -14322,10 +14322,10 @@ - $as_echo_n "(cached) " >&6 - else - -- libffi_cv_as_x86_pcrel=yes -+ libffi_cv_as_x86_pcrel=no - echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s -- if $CC $CFLAGS -c conftest.s 2>&1 | $EGREP -i 'illegal|warning' > /dev/null; then -- libffi_cv_as_x86_pcrel=no -+ if $CC $CFLAGS -c conftest.s > /dev/null; then -+ libffi_cv_as_x86_pcrel=yes - fi - - fi diff --git a/python3/python-3.3.0-gcc-4.8.patch.1 b/python3/python-3.3.0-gcc-4.8.patch.1 new file mode 100644 index 000000000000..8fb7107ff299 --- /dev/null +++ b/python3/python-3.3.0-gcc-4.8.patch.1 @@ -0,0 +1,15 @@ +--- Python-3.3.0/Include/modsupport.h 2012-09-29 10:00:26.000000000 +0200 ++++ Python-3.3.0/Include/modsupport.h 2013-03-08 10:46:28.671938738 +0100 +@@ -26,7 +26,11 @@ + /* Due to a glitch in 3.2, the _SizeT versions weren't exported from the DLL. */ + #if !defined(PY_SSIZE_T_CLEAN) || !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 + PyAPI_FUNC(int) PyArg_Parse(PyObject *, const char *, ...); +-PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...) Py_FORMAT_PARSETUPLE(PyArg_ParseTuple, 2, 3); ++PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...) ++#ifdef PY_SSIZE_T_CLEAN ++ Py_FORMAT_PARSETUPLE(PyArg_ParseTuple, 2, 3) ++#endif ++ ; + PyAPI_FUNC(int) PyArg_ParseTupleAndKeywords(PyObject *, PyObject *, + const char *, char **, ...); + PyAPI_FUNC(int) PyArg_ValidateKeywordArguments(PyObject *); diff --git a/python3/python-3.3.0-pythreadstate.patch.1 b/python3/python-3.3.0-pythreadstate.patch.1 new file mode 100644 index 000000000000..66350e2c8112 --- /dev/null +++ b/python3/python-3.3.0-pythreadstate.patch.1 @@ -0,0 +1,15 @@ +disable a check in PyThreadState_Swap that is hopefully not a "real" problem + +--- python3/Python/pystate.c 2013-04-17 22:45:00.799800000 +0200 ++++ python3/Python/pystate.c 2013-04-17 22:46:53.743800000 +0200 +@@ -437,7 +437,9 @@ + to be used for a thread. Check this the best we can in debug + builds. + */ +-#if defined(Py_DEBUG) && defined(WITH_THREAD) ++#if defined(Py_DEBUG) && defined(WITH_THREAD) && 0 ++ /* disable this for LO - it is triggered by nested PyThreadAttach ++ which do not appear to be a real problem */ + if (newts) { + /* This can be called from PyEval_RestoreThread(). Similar + to it, we need to ensure errno doesn't change. diff --git a/python3/python-3.3.0-aix.patch.1 b/python3/python-3.3.3-aix.patch.1 index 33f0426b5c94..f510a81da840 100644 --- a/python3/python-3.3.0-aix.patch.1 +++ b/python3/python-3.3.3-aix.patch.1 @@ -1,7 +1,7 @@ build with GCC on AIX ---- Python-3.3.0/configure 2012-11-28 09:05:45.990529603 +0000 -+++ Python-3.3.0/configure 2012-11-28 09:06:23.037963934 +0000 +--- Python-3.3.3/configure 2012-11-28 09:05:45.990529603 +0000 ++++ Python-3.3.3/configure 2012-11-28 09:06:23.037963934 +0000 @@ -3426,8 +3426,6 @@ else @@ -49,8 +49,8 @@ build with GCC on AIX ;; IRIX/5*) LDSHARED="ld -shared";; IRIX*/6*) LDSHARED="ld ${SGI_ABI} -shared -all";; ---- Python-3.3.0/configure.ac 2012-11-28 09:05:45.990529603 +0000 -+++ Python-3.3.0/configure.ac 2012-11-28 09:06:23.038963946 +0000 +--- Python-3.3.3/configure.ac 2012-11-28 09:05:45.990529603 +0000 ++++ Python-3.3.3/configure.ac 2012-11-28 09:06:23.038963946 +0000 @@ -545,8 +545,6 @@ without_gcc=$withval;; esac], [ @@ -98,9 +98,9 @@ build with GCC on AIX ;; IRIX/5*) LDSHARED="ld -shared";; IRIX*/6*) LDSHARED="ld ${SGI_ABI} -shared -all";; ---- Python-3.3.0/Makefile.pre.in 2012-11-28 09:05:45.861528086 +0000 -+++ Python-3.3.0/Makefile.pre.in 2012-11-28 09:06:23.046964040 +0000 -@@ -493,7 +493,10 @@ +--- Python-3.3.3/Makefile.pre.in 2012-11-28 09:05:45.861528086 +0000 ++++ Python-3.3.3/Makefile.pre.in 2012-11-28 09:06:23.046964040 +0000 +@@ -493,14 +493,20 @@ libpython$(LDVERSION).so: $(LIBRARY_OBJS) if test $(INSTSONAME) != $(LDLIBRARY); then \ @@ -112,28 +112,28 @@ build with GCC on AIX $(LN) -f $(INSTSONAME) $@; \ else \ $(BLDSHARED) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ -@@ -1106,6 +1109,8 @@ + fi + + libpython3.so: libpython$(LDVERSION).so +- $(BLDSHARED) $(NO_AS_NEEDED) -o $@ -Wl,-h$@ $^ ++ if [ "`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" != "aix" ]; then \ ++ SONAME="-Wl,-h$@"; \ ++ fi; \ ++ $(BLDSHARED) $(NO_AS_NEEDED) -o $@ $(SONAME) $^ + + libpython$(LDVERSION).dylib: $(LIBRARY_OBJS) + $(CC) -dynamiclib -Wl,-single_module $(PY_LDFLAGS) -undefined dynamic_lookup -Wl,-install_name,$(prefix)/lib/libpython$(LDVERSION).dylib -Wl,-compatibility_version,$(VERSION) -Wl,-current_version,$(VERSION) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ +@@ -1106,6 +1112,8 @@ export PATH; PATH="`pwd`:$$PATH"; \ export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \ export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \ + export LD_LIBRARY_PATH; LD_LIBRARY_PATH="`pwd`${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"; \ + export LIBPATH; LIBPATH="`pwd`${LIBPATH:+:$LIBPATH}"; \ export EXE; EXE="$(BUILDEXE)"; \ - cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen - ---- Python-3.3.0/Modules/_ctypes/libffi/fficonfig.py.in 2012-11-28 09:05:45.889528418 +0000 -+++ Python-3.3.0/Modules/_ctypes/libffi/fficonfig.py.in 2012-11-28 09:06:23.046964040 +0000 -@@ -16,7 +16,7 @@ - 'M32R': ['src/m32r/sysv.S', 'src/m32r/ffi.c'], - 'M68K': ['src/m68k/ffi.c', 'src/m68k/sysv.S'], - 'POWERPC': ['src/powerpc/ffi.c', 'src/powerpc/sysv.S', 'src/powerpc/ppc_closure.S', 'src/powerpc/linux64.S', 'src/powerpc/linux64_closure.S'], -- 'POWERPC_AIX': ['src/powerpc/ffi.c', 'src/powerpc/aix.S', 'src/powerpc/aix_closure.S'], -+ 'POWERPC_AIX': ['src/powerpc/ffi_darwin.c', 'src/powerpc/aix.S', 'src/powerpc/aix_closure.S'], - 'POWERPC_FREEBSD': ['src/powerpc/ffi.c', 'src/powerpc/sysv.S', 'src/powerpc/ppc_closure.S'], - 'ARM': ['src/arm/sysv.S', 'src/arm/ffi.c'], - 'LIBFFI_CRIS': ['src/cris/sysv.S', 'src/cris/ffi.c'], ---- Python-3.3.0/Modules/Setup.dist 2012-11-28 09:05:45.935528957 +0000 -+++ Python-3.3.0/Modules/Setup.dist 2012-11-28 09:06:23.052964111 +0000 + if [ -n "$(MULTIARCH)" ]; then export MULTIARCH; MULTIARCH=$(MULTIARCH); fi; \ + export PYTHON_FOR_BUILD; \ +--- Python-3.3.3/Modules/Setup.dist 2012-11-28 09:05:45.935528957 +0000 ++++ Python-3.3.3/Modules/Setup.dist 2012-11-28 09:06:23.052964111 +0000 @@ -177,7 +177,7 @@ #_bisect _bisectmodule.c # Bisection algorithms #_heapq _heapqmodule.c # Heap queue algorithm diff --git a/python3/python-3.3.3-elf-rpath.patch.1 b/python3/python-3.3.3-elf-rpath.patch.1 new file mode 100644 index 000000000000..33de913e09f4 --- /dev/null +++ b/python3/python-3.3.3-elf-rpath.patch.1 @@ -0,0 +1,13 @@ +set RPATH (only to be used on ELF platforms) + +--- python3/Makefile.pre.in 2013-04-19 15:08:43.637715422 +0200 ++++ python3/Makefile.pre.in 2013-04-19 15:07:32.685711138 +0200 +@@ -464,7 +464,7 @@ + + # Build the interpreter + $(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) +- $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) ++ $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) -Wl,-rpath,\$$ORIGIN + + platform: $(BUILDPYTHON) pybuilddir.txt + $(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print(get_platform()+"-"+sys.version[0:3])' >platform |