configure.ac                                            |   11 
 download.lst                                            |    7 
 external/Module_external.mk                             |    2 
 external/python3/ExternalPackage_python3.mk             |  160 +-
 external/python3/ExternalProject_python3.mk             |    3 
 external/python3/UnpackedTarball_python3.mk             |   12 
 external/python3/i100492-freebsd.patch.1                |   36 
 external/python3/python-3.3.0-darwin.patch.1            |  100 -
 external/python3/python-3.3.0-gcc-4.8.patch.1           |    7 
 external/python3/python-3.3.0-msvc-disable.patch.1      |   22 
 external/python3/python-3.3.0-ssl.patch.1               |  196 --
 external/python3/python-3.3.3-aix.patch.1               |   50 
 external/python3/python-3.3.3-elf-rpath.patch.1         |   13 
 external/python3/python-3.3.3-py17797.patch.1           |   38 
 external/python3/python-3.5.0-tcltk.disable.patch       |   16 
 external/python3/python-3.5.tweak.strip.soabi.patch     |   12 
 external/python3/ubsan.patch.0                          |   49 
 external/python33/ExternalPackage_python3.mk            |  829 ++++++++++
 external/python33/ExternalProject_python3.mk            |  148 +
 external/python33/GeneratedPackage_python3.mk           |   18 
 external/python33/Makefile                              |    7 
 external/python33/Module_python33.mk                    |   24 
 external/python33/README                                |    1 
 external/python33/UnpackedTarball_python3.mk            |   60 
 external/python33/i100492-freebsd.patch.1               |   80 +
 external/python33/python-3.3.0-clang.patch.1            |   13 
 external/python33/python-3.3.0-darwin.patch.1           |   85 +
 external/python33/python-3.3.0-gcc-4.8.patch.1          |   15 
 external/python33/python-3.3.0-i42553.patch.2           |   18 
 external/python33/python-3.3.0-msvc-disable.patch.1     |   47 
 external/python33/python-3.3.0-msvc-x64.patch.1         |  289 +++
 external/python33/python-3.3.0-msvc2012.patch.1         |   72 
 external/python33/python-3.3.0-pythreadstate.patch.1    |   15 
 external/python33/python-3.3.0-ssl.patch.1              |  208 ++
 external/python33/python-3.3.3-aix.patch.1              |  145 +
 external/python33/python-3.3.3-disable-obmalloc.patch.0 |   21 
 external/python33/python-3.3.3-elf-rpath.patch.1        |   13 
 external/python33/python-3.3.3-msvc2012-winxp.patch.1   |  117 +
 external/python33/python-3.3.3-py17797.patch.1          |   45 
 external/python33/python-3.3.5-darwin-gnu-xargs.patch.1 |   12 
 external/python33/python-3.3.5-pyexpat-symbols.patch.1  |   28 
 external/python33/python-3.3.5-vs2013.patch.1           |   14 
 external/python33/python-lsan.patch.0                   |   19 
 external/python33/python-msvc-disable-sse2.patch.1      |   23 
 external/python33/python-vc2013.patch.1                 | 1213 ++++++++++++++++
 external/python33/ubsan.patch.0                         |   79 +
 pyuno/source/module/pyuno.cxx                           |    4 
 47 files changed, 3985 insertions(+), 411 deletions(-)

New commits:
commit 147cb6a2ae63debed3dd500e19b2776cebbc0031
Author: David Ostrovsky <da...@ostrovsky.org>
Date:   Sun Jul 26 21:38:38 2015 +0200

    Bump python to 3.5
    
    3.5 release is needed for MSVC 14.0 (aka VS 2015) support. Python 3.5
    removed build toolchain support for MSVC 2013. Because we still need
    to support it, we duplicate the Python directory in externals and
    copy old patches and dispatch to this directory for MSVC 2013. Once
    the support for MSVC 2013 is dropped on master, this directory can be
    removed again.
    
    Change-Id: Idf7bc351239582f583ecbdb53c923cbdcf968089
    Reviewed-on: https://gerrit.libreoffice.org/17352
    Reviewed-by: Michael Stahl <mst...@redhat.com>
    Tested-by: Michael Stahl <mst...@redhat.com>

diff --git a/configure.ac b/configure.ac
index cd3b983..7f81a2e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -8055,8 +8055,15 @@ int main(int argc, char **argv) {
 internal)
     SYSTEM_PYTHON=
     PYTHON_VERSION_MAJOR=3
-    PYTHON_VERSION_MINOR=3
-    PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.5
+    # On windows we are supporting two different python versions: 3.3 and 3.5.
+    # We msut do it as long as we support MSVC 2013. Python 3.3 can be removed
+    # when MSVC 2013 support was dropped.
+    if test "$COM" = "MSC" -a $VCVER = 120; then
+        PYTHON_VERSION_MINOR=3
+    else
+        PYTHON_VERSION_MINOR=5
+    fi
+    PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.0
     AC_DEFINE_UNQUOTED([PYTHON_VERSION_STRING], [L"${PYTHON_VERSION}"])
     BUILD_TYPE="$BUILD_TYPE PYTHON"
     # Embedded Python dies without Home set
diff --git a/download.lst b/download.lst
old mode 100644
new mode 100755
index 62d93da..b1ebb89
--- a/download.lst
+++ b/download.lst
@@ -123,8 +123,15 @@ export PNG_TARBALL := libpng-1.5.18.tar.gz
 export POPPLER_MD5SUM := 35c0660065d023365e9854c13e289d12
 export POPPLER_TARBALL := poppler-0.26.4.tar.gz
 export POSTGRESQL_TARBALL := 
c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2
+
+ifeq ($(PYTHON_VERSION_MINOR),3)
 export PYTHON_MD5SUM := 803a75927f8f241ca78633890c798021
 export PYTHON_TARBALL := Python-3.3.5.tgz
+else
+export PYTHON_MD5SUM := a56c0c0b45d75a0ec9c6dee933c41c36
+export PYTHON_TARBALL := Python-3.5.0.tgz
+endif
+
 export RAPTOR_TARBALL := 4ceb9316488b0ea01acf011023cf7fff-raptor2-2.0.9.tar.gz
 export RASQAL_TARBALL := b12c5f9cfdb6b04efce5a4a186b8416b-rasqal-0.9.30.tar.gz
 export REDLAND_TARBALL := 
32f8e1417a64d3c6f2c727f9053f55ea-redland-1.0.16.tar.gz
diff --git a/external/Module_external.mk b/external/Module_external.mk
index a5dcade..aadb722 100644
--- a/external/Module_external.mk
+++ b/external/Module_external.mk
@@ -85,7 +85,7 @@ $(eval $(call gb_Module_add_moduledirs,external,\
        $(call gb_Helper_optional,PAGEMAKER,libpagemaker) \
        $(call gb_Helper_optional,POPPLER,poppler) \
        $(call gb_Helper_optional,POSTGRESQL,postgresql) \
-       $(call gb_Helper_optional,PYTHON,python3) \
+       $(call gb_Helper_optional,PYTHON,$(if $(filter 
$(PYTHON_VERSION_MINOR),3),python33,python3)) \
        $(call gb_Helper_optional,REDLAND,redland) \
        $(call gb_Helper_optional,REVENGE,librevenge) \
        $(call gb_Helper_optional,RHINO,rhino) \
diff --git a/external/python3/ExternalPackage_python3.mk 
b/external/python3/ExternalPackage_python3.mk
index a2f51c1..e132aab 100644
--- a/external/python3/ExternalPackage_python3.mk
+++ b/external/python3/ExternalPackage_python3.mk
@@ -53,60 +53,68 @@ $(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/libpython$(
 # one of these failed to build.
 # Obviously this list should not contain stuff with external dependencies
 # that may not be available on baseline systems.
+
 ifneq ($(OS),AIX)
 $(eval $(call 
gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/lib-dynload,\
-       LO_lib/array.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so 
\
-       
LO_lib/atexit.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/audioop.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/binascii.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_bisect.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/cmath.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so 
\
-       
LO_lib/_codecs_cn.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_codecs_hk.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_codecs_iso2022.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so
 \
-       
LO_lib/_codecs_jp.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_codecs_kr.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_codecs_tw.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_crypt.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/_csv.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_ctypes.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_ctypes_test.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_datetime.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_decimal.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_elementtree.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/fcntl.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so 
\
-       LO_lib/grp.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/array.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/audioop.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/binascii.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_bisect.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/cmath.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_cn.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_hk.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_iso2022.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so
 \
+       
LO_lib/_codecs_jp.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_kr.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_tw.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_crypt.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/_csv.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so 
\
+       
LO_lib/_ctypes.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_ctypes_test.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so 
\
+       
LO_lib/_datetime.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_decimal.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_elementtree.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so 
\
+       
LO_lib/fcntl.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/grp.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
        $(if $(DISABLE_OPENSSL),, \
-               
LO_lib/_hashlib.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+               
LO_lib/_hashlib.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
        ) \
-       
LO_lib/_heapq.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/_json.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so 
\
-       
LO_lib/_lsprof.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/math.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/mmap.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_multibytecodec.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so
 \
-       
LO_lib/_multiprocessing.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so
 \
-       LO_lib/nis.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/ossaudiodev.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/parser.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_pickle.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_posixsubprocess.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so
 \
-       
LO_lib/pyexpat.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_random.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/resource.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/select.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_socket.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/spwd.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_heapq.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_json.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_lsprof.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_lzma.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/math.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so 
\
+       LO_lib/mmap.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so 
\
+       
LO_lib/_multibytecodec.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so
 \
+       
LO_lib/_multiprocessing.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so
 \
+       LO_lib/nis.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_opcode.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/ossaudiodev.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/parser.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_pickle.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_posixsubprocess.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so
 \
+       
LO_lib/pyexpat.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_random.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/readline.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/resource.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/select.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_sha1.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_sha256.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_sha512.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_socket.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/spwd.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so 
\
        $(if $(DISABLE_OPENSSL),, \
-               
LO_lib/_ssl.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+               
LO_lib/_ssl.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
        ) \
-       
LO_lib/_struct.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/syslog.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/termios.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_testbuffer.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       
LO_lib/_testcapi.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/time.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
-       LO_lib/zlib.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_struct.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/syslog.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/termios.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_testbuffer.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_testcapi.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_testimportmultiple.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so
 \
+       
LO_lib/_testmultiphase.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so
 \
+       
LO_lib/xxlimited.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/zlib.cpython-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so 
\
 ))
 endif
 endif
@@ -159,11 +167,16 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        LICENSE \
        Lib/__future__.py \
        Lib/__phello__.foo.py \
+       Lib/_bootlocale.py \
+       Lib/_collections_abc.py \
        Lib/_compat_pickle.py \
+       Lib/_compression.py \
        Lib/_dummy_thread.py \
        Lib/_markupbase.py \
        Lib/_osx_support.py \
+       Lib/_pydecimal.py \
        Lib/_pyio.py \
+       Lib/_sitebuiltins.py \
        Lib/_strptime.py \
        Lib/_threading_local.py \
        Lib/_weakrefset.py \
@@ -179,7 +192,6 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/binhex.py \
        Lib/bisect.py \
        Lib/bz2.py \
-       Lib/cProfile.py \
        Lib/calendar.py \
        Lib/cgi.py \
        Lib/cgitb.py \
@@ -194,6 +206,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/contextlib.py \
        Lib/copy.py \
        Lib/copyreg.py \
+       Lib/cProfile.py \
        Lib/crypt.py \
        Lib/csv.py \
        Lib/datetime.py \
@@ -202,6 +215,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/dis.py \
        Lib/doctest.py \
        Lib/dummy_threading.py \
+       Lib/enum.py \
        Lib/filecmp.py \
        Lib/fileinput.py \
        Lib/fnmatch.py \
@@ -240,9 +254,10 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/nturl2path.py \
        Lib/numbers.py \
        Lib/opcode.py \
+       Lib/operator.py \
        Lib/optparse.py \
        Lib/os.py \
-       Lib/os2emxpath.py \
+       Lib/pathlib.py \
        Lib/pdb.py \
        Lib/pickle.py \
        Lib/pickletools.py \
@@ -256,20 +271,22 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/profile.py \
        Lib/pstats.py \
        Lib/pty.py \
-       Lib/py_compile.py \
        Lib/pyclbr.py \
+       Lib/py_compile.py \
        Lib/pydoc.py \
        Lib/queue.py \
        Lib/quopri.py \
        Lib/random.py \
-       Lib/re.py \
        Lib/reprlib.py \
+       Lib/re.py \
        Lib/rlcompleter.py \
        Lib/runpy.py \
        Lib/sched.py \
        Lib/shelve.py \
+       Lib/selectors.py \
        Lib/shlex.py \
        Lib/shutil.py \
+       Lib/signal.py \
        Lib/site.py \
        Lib/smtpd.py \
        Lib/smtplib.py \
@@ -280,9 +297,10 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/sre_constants.py \
        Lib/sre_parse.py \
        Lib/ssl.py \
+       Lib/statistics.py \
        Lib/stat.py \
-       Lib/string.py \
        Lib/stringprep.py \
+       Lib/string.py \
        Lib/struct.py \
        Lib/subprocess.py \
        Lib/sunau.py \
@@ -297,13 +315,14 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/this.py \
        Lib/threading.py \
        Lib/timeit.py \
-       Lib/token.py \
        Lib/tokenize.py \
-       Lib/trace.py \
+       Lib/token.py \
        Lib/traceback.py \
+       Lib/trace.py \
        Lib/tty.py \
        Lib/turtle.py \
        Lib/types.py \
+       Lib/typing.py \
        Lib/uu.py \
        Lib/uuid.py \
        Lib/warnings.py \
@@ -351,6 +370,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
 $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/distutils,\
        Lib/distutils/README \
        Lib/distutils/__init__.py \
+       Lib/distutils/_msvccompiler.py \
        Lib/distutils/archive_util.py \
        Lib/distutils/bcppcompiler.py \
        Lib/distutils/ccompiler.py \
@@ -362,7 +382,6 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/distutils/dep_util.py \
        Lib/distutils/dir_util.py \
        Lib/distutils/dist.py \
-       Lib/distutils/emxccompiler.py \
        Lib/distutils/errors.py \
        Lib/distutils/extension.py \
        Lib/distutils/fancy_getopt.py \
@@ -394,6 +413,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/distutils/command/build_scripts.py \
        Lib/distutils/command/check.py \
        Lib/distutils/command/clean.py \
+       Lib/distutils/command/command_template \
        Lib/distutils/command/config.py \
        Lib/distutils/command/install_data.py \
        Lib/distutils/command/install_egg_info.py \
@@ -406,6 +426,8 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/distutils/command/upload.py \
        Lib/distutils/command/wininst-10.0-amd64.exe \
        Lib/distutils/command/wininst-10.0.exe \
+       Lib/distutils/command/wininst-14.0-amd64.exe \
+       Lib/distutils/command/wininst-14.0.exe \
        Lib/distutils/command/wininst-6.0.exe \
        Lib/distutils/command/wininst-7.1.exe \
        Lib/distutils/command/wininst-8.0.exe \
@@ -422,6 +444,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/email/architecture.rst \
        Lib/email/base64mime.py \
        Lib/email/charset.py \
+       Lib/email/contentmanager.py \
        Lib/email/encoders.py \
        Lib/email/errors.py \
        Lib/email/feedparser.py \
@@ -460,6 +483,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/encodings/cp037.py \
        Lib/encodings/cp1006.py \
        Lib/encodings/cp1026.py \
+       Lib/encodings/cp1125.py \
        Lib/encodings/cp1140.py \
        Lib/encodings/cp1250.py \
        Lib/encodings/cp1251.py \
@@ -531,7 +555,9 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/encodings/iso8859_9.py \
        Lib/encodings/johab.py \
        Lib/encodings/koi8_r.py \
+       Lib/encodings/koi8_t.py \
        Lib/encodings/koi8_u.py \
+       Lib/encodings/kz1048.py \
        Lib/encodings/latin_1.py \
        Lib/encodings/mac_arabic.py \
        Lib/encodings/mac_centeuro.py \
@@ -588,6 +614,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
 $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/importlib,\
        Lib/importlib/__init__.py \
        Lib/importlib/_bootstrap.py \
+       Lib/importlib/_bootstrap_external.py \
        Lib/importlib/abc.py \
        Lib/importlib/machinery.py \
        Lib/importlib/util.py \
@@ -602,10 +629,10 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
 ))
 
 $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/lib2to3,\
-       Lib/lib2to3/Grammar.txt \
-       Lib/lib2to3/PatternGrammar.txt \
        Lib/lib2to3/__init__.py \
        Lib/lib2to3/__main__.py \
+       Lib/lib2to3/Grammar.txt \
+       Lib/lib2to3/PatternGrammar.txt \
        Lib/lib2to3/btm_matcher.py \
        Lib/lib2to3/btm_utils.py \
        Lib/lib2to3/fixer_base.py \
@@ -620,6 +647,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
 $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/lib2to3/fixes,\
        Lib/lib2to3/fixes/__init__.py \
        Lib/lib2to3/fixes/fix_apply.py \
+       Lib/lib2to3/fixes/fix_asserts.py \
        Lib/lib2to3/fixes/fix_basestring.py \
        Lib/lib2to3/fixes/fix_buffer.py \
        Lib/lib2to3/fixes/fix_callable.py \
@@ -656,6 +684,7 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/lib2to3/fixes/fix_raise.py \
        Lib/lib2to3/fixes/fix_raw_input.py \
        Lib/lib2to3/fixes/fix_reduce.py \
+       Lib/lib2to3/fixes/fix_reload.py \
        Lib/lib2to3/fixes/fix_renames.py \
        Lib/lib2to3/fixes/fix_repr.py \
        Lib/lib2to3/fixes/fix_set_literal.py \
@@ -693,14 +722,21 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
 $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/multiprocessing,\
        Lib/multiprocessing/__init__.py \
        Lib/multiprocessing/connection.py \
-       Lib/multiprocessing/forking.py \
+       Lib/multiprocessing/context.py \
+       Lib/multiprocessing/forkserver.py \
        Lib/multiprocessing/heap.py \
        Lib/multiprocessing/managers.py \
-       Lib/multiprocessing/pool.py \
+       Lib/multiprocessing/popen_fork.py \
+       Lib/multiprocessing/popen_forkserver.py \
+       Lib/multiprocessing/popen_spawn_posix.py \
+       Lib/multiprocessing/popen_spawn_win32.py \
        Lib/multiprocessing/process.py \
        Lib/multiprocessing/queues.py \
        Lib/multiprocessing/reduction.py \
+       Lib/multiprocessing/resource_sharer.py \
+       Lib/multiprocessing/semaphore_tracker.py \
        Lib/multiprocessing/sharedctypes.py \
+       Lib/multiprocessing/spawn.py \
        Lib/multiprocessing/synchronize.py \
        Lib/multiprocessing/util.py \
 ))
@@ -732,6 +768,8 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
 
 $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/unittest/test,\
        Lib/unittest/test/__init__.py \
+       Lib/unittest/test/__main__.py \
+       Lib/unittest/test/_test_warnings.py \
        Lib/unittest/test/dummy.py \
        Lib/unittest/test/support.py \
        Lib/unittest/test/test_assertions.py \
@@ -746,11 +784,11 @@ $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/p
        Lib/unittest/test/test_setups.py \
        Lib/unittest/test/test_skipping.py \
        Lib/unittest/test/test_suite.py \
-       Lib/unittest/test/_test_warnings.py \
 ))
 
 $(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/unittest/test/testmock,\
        Lib/unittest/test/testmock/__init__.py \
+       Lib/unittest/test/testmock/__main__.py \
        Lib/unittest/test/testmock/support.py \
        Lib/unittest/test/testmock/testcallable.py \
        Lib/unittest/test/testmock/testhelpers.py \
diff --git a/external/python3/ExternalProject_python3.mk 
b/external/python3/ExternalProject_python3.mk
index 098b1ea..72afab7 100644
--- a/external/python3/ExternalProject_python3.mk
+++ b/external/python3/ExternalProject_python3.mk
@@ -136,8 +136,7 @@ $(call 
gb_ExternalProject_get_state_target,python3,fixinstallnames) : $(call gb_
 $(call gb_ExternalProject_get_state_target,python3,executables) : $(call 
gb_ExternalProject_get_state_target,python3,build)
        cd 
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin
 ; \
        for file in python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) \
-                   python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m \
-                   pythonw$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR) ; do 
\
+                   python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m ; do 
\
        $(INSTALL_NAME_TOOL) -change \
                
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/LibreOfficePython
 \
                @executable_path/../LibreOfficePython $$file ; done
diff --git a/external/python3/UnpackedTarball_python3.mk 
b/external/python3/UnpackedTarball_python3.mk
index b091bfc..37b05c9 100644
--- a/external/python3/UnpackedTarball_python3.mk
+++ b/external/python3/UnpackedTarball_python3.mk
@@ -17,24 +17,20 @@ $(eval $(call gb_UnpackedTarball_fix_end_of_line,python3,\
 
 $(eval $(call gb_UnpackedTarball_add_patches,python3,\
        external/python3/i100492-freebsd.patch.1 \
-       external/python3/python-3.3.0-i42553.patch.2 \
        external/python3/python-3.3.3-aix.patch.1 \
        external/python3/python-3.3.0-darwin.patch.1 \
-       external/python3/python-3.3.0-msvc2012.patch.1 \
        external/python3/python-3.3.0-msvc-disable.patch.1 \
-       external/python3/python-3.3.0-msvc-x64.patch.1 \
        external/python3/python-3.3.0-ssl.patch.1 \
-       external/python3/python-3.3.0-gcc-4.8.patch.1 \
+       external/python3/python-3.3.3-py17797.patch.1 \
+       external/python3/python-3.3.0-i42553.patch.2 \
        external/python3/python-3.3.0-pythreadstate.patch.1 \
        external/python3/python-3.3.0-clang.patch.1 \
-       external/python3/python-3.3.3-py17797.patch.1 \
-       external/python3/python-3.3.3-msvc2012-winxp.patch.1 \
        external/python3/python-3.3.5-pyexpat-symbols.patch.1 \
        external/python3/python-3.3.5-vs2013.patch.1 \
-       external/python3/python-3.3.5-darwin-gnu-xargs.patch.1 \
-       external/python3/python-msvc-disable-sse2.patch.1 \
        external/python3/python-lsan.patch.0 \
        external/python3/ubsan.patch.0 \
+       external/python3/python-3.5.tweak.strip.soabi.patch \
+       external/python3/python-3.5.0-tcltk.disable.patch \
 ))
 
 ifneq ($(filter DRAGONFLY FREEBSD LINUX NETBSD OPENBSD SOLARIS,$(OS)),)
diff --git a/external/python3/i100492-freebsd.patch.1 
b/external/python3/i100492-freebsd.patch.1
index 7189a7e..9b4b337 100644
--- a/external/python3/i100492-freebsd.patch.1
+++ b/external/python3/i100492-freebsd.patch.1
@@ -1,30 +1,18 @@
 FreeBSD porting fixes, patch by m...@openoffice.org
 
---- Python-3.3.0/configure     2012-11-28 09:00:41.094955090 +0000
-+++ Python-3.3.0/configure     2012-11-28 09:01:13.033329526 +0000
-@@ -5545,11 +5545,6 @@
-         LDLIBRARY='libpython$(LDVERSION).so'
-         BLDLIBRARY='-L. -lpython$(LDVERSION)'
-         RUNSHARED=LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}
--        case $ac_sys_system in
--            FreeBSD*)
--              SOVERSION=`echo $SOVERSION|cut -d "." -f 1`
--              ;;
--        esac
-         INSTSONAME="$LDLIBRARY".$SOVERSION
-         if test "$with_pydebug" != yes
-           then
---- Python-3.3.0/Lib/test/test_threading.py    2012-11-28 09:00:41.292957412 
+0000
-+++ Python-3.3.0/Lib/test/test_threading.py    2012-11-28 09:01:13.017329339 
+0000
-@@ -451,7 +451,7 @@
-     # #12316 and #11870), and fork() from a worker thread is known to trigger
-     # problems with some operating systems (issue #3863): skip problematic 
tests
-     # on platforms known to behave badly.
--    platforms_to_skip = ('freebsd4', 'freebsd5', 'freebsd6', 'netbsd5',
-+    platforms_to_skip = ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 
'netbsd5',
-                          'os2emx', 'hp-ux11')
+--- python3.orig/Lib/test/test_threading.py    2015-07-05 18:50:07.000000000 
+0200
++++ python3/Lib/test/test_threading.py 2015-07-26 17:03:55.935367820 +0200
+@@ -24,8 +24,8 @@
+ # #12316 and #11870), and fork() from a worker thread is known to trigger
+ # problems with some operating systems (issue #3863): skip problematic tests
+ # on platforms known to behave badly.
+-platforms_to_skip = ('freebsd4', 'freebsd5', 'freebsd6', 'netbsd5',
+-                     'hp-ux11')
++platforms_to_skip = ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 
'netbsd5',
++                     'os2emx', 'hp-ux11')
  
-     def _run_and_join(self, script):
+ 
+ # A trivial mutable counter.
 --- Python-3.3.0/Python/thread_pthread.h       2012-11-28 09:00:41.097955124 
+0000
 +++ Python-3.3.0/Python/thread_pthread.h       2012-11-28 09:01:13.018329351 
+0000
 @@ -42,6 +42,10 @@
diff --git a/external/python3/python-3.3.0-darwin.patch.1 
b/external/python3/python-3.3.0-darwin.patch.1
index a709473..2cf5bbb 100644
--- a/external/python3/python-3.3.0-darwin.patch.1
+++ b/external/python3/python-3.3.0-darwin.patch.1
@@ -2,14 +2,14 @@
 
 LO needs to build both against MacOSX SDK and not produce universal binaries.
 
-diff -ru python3.old_/configure python3/configure
---- python3.old_/configure     2012-09-29 10:00:50.000000000 +0200
-+++ python3/configure  2012-11-13 16:37:26.030013256 +0100
-@@ -6353,7 +6353,19 @@
-           if test "${enable_universalsdk}"; then
-               UNIVERSAL_ARCH_FLAGS=""
-               if test "$UNIVERSAL_ARCHS" = "32-bit" ; then
--                 UNIVERSAL_ARCH_FLAGS="-arch ppc -arch i386"
+diff -ru python3.orig/configure python3/configure
+--- python3.orig/configure     2015-07-26 17:36:11.808497783 +0200
++++ python3/configure  2015-07-26 17:38:49.016508337 +0200
+@@ -6794,7 +6794,20 @@
+         then
+             case "$UNIVERSAL_ARCHS" in
+             32-bit)
+-               UNIVERSAL_ARCH_FLAGS="-arch ppc -arch i386"
 +           # LO does not use Universal Binaries (but the only way to set a SDK
 +           # here implies that, so de-universalize here...)
 +           case `/usr/bin/arch` in
@@ -23,36 +23,16 @@ diff -ru python3.old_/configure python3/configure
 +               as_fn_error $? "Unexpected output of 'arch' on OSX" "$LINENO" 5
 +               ;;
 +           esac
-                  ARCH_RUN_32BIT=""
-                  LIPO_32BIT_FLAGS=""
-                elif test "$UNIVERSAL_ARCHS" = "64-bit" ; then
-
-On OS X avoid /usr/local/lib and include like the plague, we don't
-want to accidentally get some MacPorts etc stuff.
-
-On OS X, always run the compiler (which is Clang, not gcc) to find out
-what the include paths are. On a clean modern installation, there is
-no /usr/include.
-
---- python3/setup.py
-+++ python3/setup.py
-@@ -460,11 +460,11 @@
-         # Ensure that /usr/local is always used, but the local build
-         # directories (i.e. '.' and 'Include') must be first.  See issue
-         # 10520.
--        if not cross_compiling:
-+        if not cross_compiling and host_platform != 'darwin':
-             add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
-             add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
-         # only change this for cross builds for 3.3, issues on Mageia
--        if cross_compiling:
-+        if cross_compiling or host_platform == 'darwin':
-             self.add_gcc_paths()
-         self.add_multiarch_paths()
- 
---- python3/Mac/Makefile.in.orig       2013-09-13 20:16:50.558137603 +0200
-+++ python3/Mac/Makefile.in    2013-09-13 21:57:14.790962423 +0200
-@@ -39,7 +39,7 @@
++
+                LIPO_32BIT_FLAGS=""
+                ARCH_RUN_32BIT=""
+                ;;
+Only in python3: .#configure
+Only in python3: #configure#
+diff -ru python3.orig/Mac/Makefile.in python3/Mac/Makefile.in
+--- python3.orig/Mac/Makefile.in       2015-07-05 18:50:07.000000000 +0200
++++ python3/Mac/Makefile.in    2015-07-26 17:40:14.860514100 +0200
+@@ -43,7 +43,7 @@
  INSTALL_SCRIPT= @INSTALL_SCRIPT@
  INSTALL_DATA=@INSTALL_DATA@
  LN=@LN@
@@ -61,8 +41,21 @@ no /usr/include.
  CPMAC=CpMac
  
  APPTEMPLATE=$(srcdir)/Resources/app
---- python3/Mac/Resources/framework/Info.plist.in
-+++ python3/Mac/Resources/framework/Info.plist.in
+diff -ru python3.orig/Mac/Resources/app/Info.plist.in 
python3/Mac/Resources/app/Info.plist.in
+--- python3.orig/Mac/Resources/app/Info.plist.in       2015-07-05 
18:50:07.000000000 +0200
++++ python3/Mac/Resources/app/Info.plist.in    2015-07-26 17:42:00.974521224 
+0200
+@@ -18,7 +18,7 @@
+               </dict>
+       </array>
+       <key>CFBundleExecutable</key>
+-      <string>Python</string>
++      <string>LibreOfficePython</string>
+       <key>CFBundleGetInfoString</key>
+       <string>%version%, (c) 2001-2015 Python Software Foundation.</string>
+       <key>CFBundleHelpBookFolder</key>
+diff -ru python3.orig/Mac/Resources/framework/Info.plist.in 
python3/Mac/Resources/framework/Info.plist.in
+--- python3.orig/Mac/Resources/framework/Info.plist.in 2015-07-05 
18:50:07.000000000 +0200
++++ python3/Mac/Resources/framework/Info.plist.in      2015-07-26 
17:41:15.996518204 +0200
 @@ -5,7 +5,7 @@
        <key>CFBundleDevelopmentRegion</key>
        <string>English</string>
@@ -72,14 +65,19 @@ no /usr/include.
        <key>CFBundleGetInfoString</key>
        <string>Python Runtime and Library</string>
        <key>CFBundleIdentifier</key>
---- python3/Mac/Resources/app/Info.plist.in
-+++ python3/Mac/Resources/app/Info.plist.in
-@@ -18,7 +18,7 @@
-               </dict>
-       </array>
-       <key>CFBundleExecutable</key>
--      <string>Python</string>
-+      <string>LibreOfficePython</string>
-       <key>CFBundleGetInfoString</key>
-       <string>%version%, (c) 2004-2014 Python Software Foundation.</string>
-       <key>CFBundleHelpBookFolder</key>
+diff -ru python3.orig/setup.py python3/setup.py
+--- python3.orig/setup.py      2015-07-26 17:36:11.804497783 +0200
++++ python3/setup.py   2015-07-26 17:39:48.599512337 +0200
+@@ -468,11 +468,11 @@
+         # Ensure that /usr/local is always used, but the local build
+         # directories (i.e. '.' and 'Include') must be first.  See issue
+         # 10520.
+-        if not cross_compiling:
++        if not cross_compiling and host_platform != 'darwin':
+             add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
+             add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
+         # only change this for cross builds for 3.3, issues on Mageia
+-        if cross_compiling:
++        if cross_compiling or host_platform == 'darwin':
+             self.add_gcc_paths()
+         self.add_multiarch_paths()
diff --git a/external/python3/python-3.3.0-gcc-4.8.patch.1 
b/external/python3/python-3.3.0-gcc-4.8.patch.1
index 8fb7107..6af06b3 100644
--- a/external/python3/python-3.3.0-gcc-4.8.patch.1
+++ b/external/python3/python-3.3.0-gcc-4.8.patch.1
@@ -1,10 +1,11 @@
---- 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
+diff -ru python3.orig/Include/modsupport.h python3/Include/modsupport.h
+--- python3.orig/Include/modsupport.h  2015-07-05 18:50:06.000000000 +0200
++++ python3/Include/modsupport.h       2015-07-26 18:21:30.717680314 +0200
 @@ -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 *, ...);
 +PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...)
 +#ifdef PY_SSIZE_T_CLEAN
 +    Py_FORMAT_PARSETUPLE(PyArg_ParseTuple, 2, 3)
diff --git a/external/python3/python-3.3.0-msvc-disable.patch.1 
b/external/python3/python-3.3.0-msvc-disable.patch.1
index 6a6a950..bb0a57f 100644
--- a/external/python3/python-3.3.0-msvc-disable.patch.1
+++ b/external/python3/python-3.3.0-msvc-disable.patch.1
@@ -1,20 +1,18 @@
 Disable some stuff LO does not need, especially stuff with external 
dependencies
 
-diff -ru python3/PCbuild/pcbuild.sln python3.new/PCbuild/pcbuild.sln
---- python3/PCbuild/pcbuild.sln        2012-09-29 10:00:48.000000000 +0200
-+++ python3.new/PCbuild/pcbuild.sln    2012-11-12 22:13:49.445159668 +0100
-@@ -12,10 +12,6 @@
+diff -ru python3.orig/PCbuild/pcbuild.sln python3/PCbuild/pcbuild.sln
+--- python3.orig/PCbuild/pcbuild.sln   2015-07-26 17:43:52.262528695 +0200
++++ python3/PCbuild/pcbuild.sln        2015-07-26 18:00:18.438594901 +0200
+@@ -12,8 +12,6 @@
  EndProject
  Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythoncore", 
"pythoncore.vcxproj", "{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}"
  EndProject
 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythonw", 
"pythonw.vcxproj", "{F4229CC3-873C-49AE-9729-DD308ED4CD4A}"
 -EndProject
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "w9xpopen", 
"w9xpopen.vcxproj", "{E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}"
--EndProject
- Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_buildinfo", 
"make_buildinfo.vcxproj", "{C73F0EC1-358B-4177-940F-0846AC8B04CD}"
- EndProject
  Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winsound", 
"winsound.vcxproj", "{28B5D777-DDF2-4B6B-B34F-31D938813856}"
-@@ -32,30 +28,16 @@
+ EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_decimal", 
"_decimal.vcxproj", "{0E9791DB-593A-465F-98BC-681011311617}"
+@@ -28,32 +26,18 @@
  EndProject
  Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_socket", 
"_socket.vcxproj", "{86937F53-C189-40EF-8CE8-8759D8E7D480}"
  EndProject
@@ -24,6 +22,8 @@ diff -ru python3/PCbuild/pcbuild.sln 
python3.new/PCbuild/pcbuild.sln
  EndProject
  Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testcapi", 
"_testcapi.vcxproj", "{6901D91C-6E48-4BB7-9FEC-700C8131DF1D}"
  EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testimportmultiple", 
"_testimportmultiple.vcxproj", "{36D0C52C-DF4E-45D0-8BC7-E294C3ABC781}"
+ EndProject
 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_tkinter", 
"_tkinter.vcxproj", "{4946ECAC-2E69-4BF8-A90A-F5136F5094DF}"
 -EndProject
 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_bz2", "_bz2.vcxproj", 
"{73FCD2BD-F133-46B7-8EC1-144CD82A59D5}"
@@ -36,7 +36,7 @@ diff -ru python3/PCbuild/pcbuild.sln 
python3.new/PCbuild/pcbuild.sln
  EndProject
  Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", 
"pyexpat.vcxproj", "{D06B6426-4762-44CC-8BAD-D79052507F2F}"
  EndProject
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", 
"bdist_wininst.vcxproj", "{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}"
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", 
"..\PC\bdist_wininst\bdist_wininst.vcxproj", 
"{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}"
 -EndProject
 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", 
"_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}"
 -EndProject
@@ -44,4 +44,4 @@ diff -ru python3/PCbuild/pcbuild.sln 
python3.new/PCbuild/pcbuild.sln
 -EndProject
  Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", 
"_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}"
  EndProject
- Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl", "ssl.vcxproj", 
"{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}"
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", 
"python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}"
diff --git a/external/python3/python-3.3.0-ssl.patch.1 
b/external/python3/python-3.3.0-ssl.patch.1
index b85fe07..e43a7b3 100644
--- a/external/python3/python-3.3.0-ssl.patch.1
+++ b/external/python3/python-3.3.0-ssl.patch.1
@@ -2,186 +2,55 @@
 
 Tweak SSL build to find OpenSSL in solver & not build it itself in 
"ssl.vcproj" etc.
 
-diff -ru python3.old_/Modules/Setup.dist python3/Modules/Setup.dist
---- python3.old_/Modules/Setup.dist    2012-09-29 10:00:42.000000000 +0200
-+++ python3/Modules/Setup.dist 2012-11-13 14:19:01.994158111 +0100
-@@ -236,14 +236,14 @@
- # The _md5 module implements the RSA Data Security, Inc. MD5
- # Message-Digest Algorithm, described in RFC 1321.
- 
--#_md5 md5module.c
-+_md5 md5module.c
- 
- 
- # The _sha module implements the SHA checksum algorithms.
- # (NIST's Secure Hash Algorithms.)
--#_sha1 sha1module.c
--#_sha256 sha256module.c
--#_sha512 sha512module.c
-+_sha1 sha1module.c
-+_sha256 sha256module.c
-+_sha512 sha512module.c
- 
- 
- # The _tkinter module.
-diff -ru python3.old_/PCbuild/pcbuild.sln python3/PCbuild/pcbuild.sln
---- python3.old_/PCbuild/pcbuild.sln   2012-09-29 10:00:48.000000000 +0200
-+++ python3/PCbuild/pcbuild.sln        2012-11-13 14:50:39.220142472 +0100
-@@ -58,8 +58,6 @@
+diff -ru python3.orig/PCbuild/pcbuild.sln python3/PCbuild/pcbuild.sln
+--- python3.orig/PCbuild/pcbuild.sln   2015-08-22 18:57:16.653719900 +0200
++++ python3/PCbuild/pcbuild.sln        2015-08-22 19:03:06.062853000 +0200
+@@ -64,10 +64,6 @@
  EndProject
- Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", 
"_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}"
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tk", "tk.vcxproj", 
"{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}"
  EndProject
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl", "ssl.vcxproj", 
"{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}"
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay", 
"libeay.vcxproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}"
 -EndProject
- Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kill_python", 
"kill_python.vcxproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}"
- EndProject
- Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", 
"python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}"
-diff -ru python3.old_/PCbuild/_ssl.vcxproj python3/PCbuild/_ssl.vcxproj
---- python3.old_/PCbuild/_ssl.vcxproj  2012-09-29 10:00:48.000000000 +0200
-+++ python3/PCbuild/_ssl.vcxproj       2012-11-13 14:55:50.298137715 +0100
-@@ -151,14 +151,14 @@
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay", 
"ssleay.vcxproj", "{10615B24-73BF-4EFA-93AA-236916321317}"
+-EndProject
+ Global
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution
+               Debug|Win32 = Debug|Win32
+diff -ru python3.orig/PCbuild/_ssl.vcxproj python3/PCbuild/_ssl.vcxproj
+--- python3.orig/PCbuild/_ssl.vcxproj   2015-08-11 02:52:36.000000000 +0200
++++ python3/PCbuild/_ssl.vcxproj        2015-08-22 18:19:20.744299000 +0200
+@@ -61,10 +61,10 @@
    </PropertyGroup>
-   <ItemDefinitionGroup 
Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-     <ClCompile>
--      
<AdditionalIncludeDirectories>$(opensslDir)\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+      
<AdditionalIncludeDirectories>$(WORKDIR)/UnpackedTarball/openssl/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-     </ClCompile>
-     <PreLinkEvent>
-       <Command>
-       </Command>
-     </PreLinkEvent>
-     <Link>
--      
<AdditionalDependencies>ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-+      
<AdditionalDependencies>ws2_32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-     </Link>
-   </ItemDefinitionGroup>
-   <ItemDefinitionGroup 
Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
-@@ -166,26 +166,26 @@
-       <TargetEnvironment>X64</TargetEnvironment>
-     </Midl>
-     <ClCompile>
--      
<AdditionalIncludeDirectories>$(opensslDir)\inc64;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+      
<AdditionalIncludeDirectories>$(WORKDIR)/UnpackedTarball/openssl/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-     </ClCompile>
-     <PreLinkEvent>
-       <Command>
-       </Command>
-     </PreLinkEvent>
-     <Link>
--      
<AdditionalDependencies>ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-+      
<AdditionalDependencies>ws2_32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-     </Link>
-   </ItemDefinitionGroup>
-   <ItemDefinitionGroup 
Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-     <ClCompile>
--      
<AdditionalIncludeDirectories>$(opensslDir)\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+      
<AdditionalIncludeDirectories>$(WORKDIR)/UnpackedTarball/openssl/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-     </ClCompile>
-     <PreLinkEvent>
-       <Command>
-       </Command>
-     </PreLinkEvent>
-     <Link>
--      
<AdditionalDependencies>ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-+      
<AdditionalDependencies>ws2_32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-     </Link>
-   </ItemDefinitionGroup>
-   <ItemDefinitionGroup 
Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
-@@ -193,26 +193,26 @@
-       <TargetEnvironment>X64</TargetEnvironment>
-     </Midl>
-     <ClCompile>
--      
<AdditionalIncludeDirectories>$(opensslDir)\inc64;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+      
<AdditionalIncludeDirectories>$(WORKDIR)/UnpackedTarball/openssl/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-     </ClCompile>
-     <PreLinkEvent>
-       <Command>
-       </Command>
-     </PreLinkEvent>
-     <Link>
--      
<AdditionalDependencies>ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-+      
<AdditionalDependencies>ws2_32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-     </Link>
-   </ItemDefinitionGroup>
-   <ItemDefinitionGroup 
Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'">
-     <ClCompile>
--      
<AdditionalIncludeDirectories>$(opensslDir)\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+      
<AdditionalIncludeDirectories>$(WORKDIR)/UnpackedTarball/openssl/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-     </ClCompile>
-     <PreLinkEvent>
-       <Command>
-       </Command>
-     </PreLinkEvent>
-     <Link>
--      
<AdditionalDependencies>ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-+      
<AdditionalDependencies>ws2_32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-     </Link>
-   </ItemDefinitionGroup>
-   <ItemDefinitionGroup 
Condition="'$(Configuration)|$(Platform)'=='PGInstrument|x64'">
-@@ -220,27 +220,27 @@
-       <TargetEnvironment>X64</TargetEnvironment>
-     </Midl>
-     <ClCompile>
--      
<AdditionalIncludeDirectories>$(opensslDir)\inc64;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+      
<AdditionalIncludeDirectories>$(WORKDIR)/UnpackedTarball/openssl/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-     </ClCompile>
-     <PreLinkEvent>
-       <Command>
-       </Command>
-     </PreLinkEvent>
-     <Link>
--      
<AdditionalDependencies>ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-+      
<AdditionalDependencies>ws2_32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-       <TargetMachine>MachineX64</TargetMachine>
-     </Link>
-   </ItemDefinitionGroup>
-   <ItemDefinitionGroup 
Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'">
-     <ClCompile>
--      
<AdditionalIncludeDirectories>$(opensslDir)\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+      
<AdditionalIncludeDirectories>$(WORKDIR)/UnpackedTarball/openssl/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-     </ClCompile>
-     <PreLinkEvent>
-       <Command>
-       </Command>
-     </PreLinkEvent>
-     <Link>
--      
<AdditionalDependencies>ws2_32.lib;$(opensslDir)\out32\libeay32.lib;$(opensslDir)\out32\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-+      
<AdditionalDependencies>ws2_32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-     </Link>
-   </ItemDefinitionGroup>
-   <ItemDefinitionGroup 
Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'">
-@@ -248,14 +248,14 @@
-       <TargetEnvironment>X64</TargetEnvironment>
-     </Midl>
+   <ItemDefinitionGroup>
      <ClCompile>
--      
<AdditionalIncludeDirectories>$(opensslDir)\inc64;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+-      
<AdditionalIncludeDirectories>$(opensslDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 +      
<AdditionalIncludeDirectories>$(WORKDIR)/UnpackedTarball/openssl/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      </ClCompile>
-     <PreLinkEvent>
-       <Command>
-       </Command>
-     </PreLinkEvent>
      <Link>
--      
<AdditionalDependencies>ws2_32.lib;$(opensslDir)\out64\libeay32.lib;$(opensslDir)\out64\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-+      
<AdditionalDependencies>ws2_32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
-       <TargetMachine>MachineX64</TargetMachine>
+-      
<AdditionalDependencies>ws2_32.lib;crypt32.lib;$(OutDir)libeay$(PyDebugExt).lib;$(OutDir)ssleay$(PyDebugExt).lib;%(AdditionalDependencies)</AdditionalDependencies>
++      
<AdditionalDependencies>ws2_32.lib;crypt32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib;$(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
      </Link>
    </ItemDefinitionGroup>
-@@ -271,10 +271,6 @@
+   <ItemGroup>
+@@ -75,14 +75,6 @@
        <Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>
        <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
      </ProjectReference>
--    <ProjectReference Include="ssl.vcxproj">
+-    <ProjectReference Include="libeay.vcxproj">
 -      <Project>{e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0}</Project>
 -      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
 -    </ProjectReference>
+-    <ProjectReference Include="ssleay.vcxproj">
+-      <Project>{10615b24-73bf-4efa-93aa-236916321317}</Project>
+-      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+-    </ProjectReference>
      <ProjectReference Include="_socket.vcxproj">
        <Project>{86937f53-c189-40ef-8ce8-8759d8e7d480}</Project>
        <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
-diff -ru python3.old_/setup.py python3/setup.py
---- python3.old_/setup.py      2012-09-29 10:00:50.000000000 +0200
-+++ python3/setup.py   2012-11-13 14:18:23.484158149 +0100
-@@ -757,7 +757,10 @@
+diff -ru python3.orig/setup.py python3/setup.py
+--- python3.orig/setup.py       2015-08-22 18:16:15.825267200 +0200
++++ python3/setup.py    2015-08-22 18:22:44.162757900 +0200
+@@ -778,7 +778,10 @@
          exts.append( Extension('_socket', ['socketmodule.c'],
                                 depends = ['socketmodule.h']) )
          # Detect SSL support for the socket module (via _ssl)
@@ -192,7 +61,7 @@ diff -ru python3.old_/setup.py python3/setup.py
                                '/usr/local/ssl/include',
                                '/usr/contrib/ssl/include/'
                               ]
-@@ -769,8 +774,12 @@
+@@ -790,8 +793,12 @@
                                 ['/usr/kerberos/include'])
              if krb5_h:
                  ssl_incs += krb5_h
@@ -205,4 +74,5 @@ diff -ru python3.old_/setup.py python3/setup.py
 +                                      '/usr/local/ssl/lib',
                                        '/usr/contrib/ssl/lib/'
                                       ] )
- 
+
+
diff --git a/external/python3/python-3.3.3-aix.patch.1 
b/external/python3/python-3.3.3-aix.patch.1
index f510a81..1387e9c 100644
--- a/external/python3/python-3.3.3-aix.patch.1
+++ b/external/python3/python-3.3.3-aix.patch.1
@@ -1,8 +1,9 @@
 build with GCC on AIX
 
---- 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 @@
+diff -ru python3.orig/configure python3/configure
+--- python3.orig/configure     2015-07-26 17:10:18.218393484 +0200
++++ python3/configure  2015-07-26 17:29:44.460471779 +0200
+@@ -3534,8 +3534,6 @@
  else
  
        case $ac_sys_system in
@@ -11,7 +12,7 @@ build with GCC on AIX
        *)      without_gcc=no;;
        esac
  fi
-@@ -5541,10 +5539,18 @@
+@@ -5787,10 +5785,18 @@
              PY3LIBRARY=libpython3.so
          fi
            ;;
@@ -19,7 +20,7 @@ build with GCC on AIX
 +    Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*|AIX*)
          LDLIBRARY='libpython$(LDVERSION).so'
 -        BLDLIBRARY='-L. -lpython$(LDVERSION)'
--        RUNSHARED=LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}
+-        RUNSHARED=LD_LIBRARY_PATH=`pwd`${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
 +        case $ac_sys_system in
 +          AIX*)
 +            BLDLIBRARY='-Wl,-brtl -L. -lpython$(LDVERSION)'
@@ -33,7 +34,7 @@ build with GCC on AIX
          INSTSONAME="$LDLIBRARY".$SOVERSION
          if test "$with_pydebug" != yes
            then
-@@ -8301,8 +8307,13 @@
+@@ -8789,8 +8795,13 @@
  then
        case $ac_sys_system/$ac_sys_release in
        AIX*)
@@ -49,9 +50,10 @@ build with GCC on AIX
                ;;
        IRIX/5*) LDSHARED="ld -shared";;
        IRIX*/6*) LDSHARED="ld ${SGI_ABI} -shared -all";;
---- 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 @@
+diff -ru python3.orig/configure.ac python3/configure.ac
+--- python3.orig/configure.ac  2015-07-05 18:50:08.000000000 +0200
++++ python3/configure.ac       2015-07-26 17:32:10.445481579 +0200
+@@ -587,8 +587,6 @@
                without_gcc=$withval;;
        esac], [
        case $ac_sys_system in
@@ -60,15 +62,15 @@ build with GCC on AIX
        *)      without_gcc=no;;
        esac])
  AC_MSG_RESULT($without_gcc)
-@@ -910,10 +908,18 @@
+@@ -1090,10 +1088,18 @@
              PY3LIBRARY=libpython3.so
          fi
            ;;
 -    Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*)
-+    Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*|AIX*)
++    
Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*|AIX*)Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*)
          LDLIBRARY='libpython$(LDVERSION).so'
 -        BLDLIBRARY='-L. -lpython$(LDVERSION)'
--        RUNSHARED=LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}
+-        RUNSHARED=LD_LIBRARY_PATH=`pwd`${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
 +        case $ac_sys_system in
 +          AIX*)
 +            BLDLIBRARY='-Wl,-brtl -L. -lpython$(LDVERSION)'
@@ -79,10 +81,10 @@ build with GCC on AIX
 +            RUNSHARED=LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}
 +            ;;
 +        esac
-         case $ac_sys_system in
-             FreeBSD*)
-               SOVERSION=`echo $SOVERSION|cut -d "." -f 1`
-@@ -1866,8 +1872,13 @@
+         INSTSONAME="$LDLIBRARY".$SOVERSION
+         if test "$with_pydebug" != yes
+           then
+@@ -2164,8 +2170,13 @@
  then
        case $ac_sys_system/$ac_sys_release in
        AIX*)
@@ -98,9 +100,10 @@ build with GCC on AIX
                ;;
        IRIX/5*) LDSHARED="ld -shared";;
        IRIX*/6*) LDSHARED="ld ${SGI_ABI} -shared -all";;
---- 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 @@
+diff -ru python3.orig/Makefile.pre.in python3/Makefile.pre.in
+--- python3.orig/Makefile.pre.in       2015-07-05 18:50:07.000000000 +0200
++++ python3/Makefile.pre.in    2015-07-26 17:34:00.386488960 +0200
+@@ -598,14 +598,20 @@
  
  libpython$(LDVERSION).so: $(LIBRARY_OBJS)
        if test $(INSTSONAME) != $(LDLIBRARY); then \
@@ -123,7 +126,7 @@ build with GCC on AIX
  
  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 @@
+@@ -1299,6 +1305,8 @@
        export PATH; PATH="`pwd`:$$PATH"; \
        export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \
        export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \
@@ -132,9 +135,10 @@ build with GCC on AIX
        export EXE; EXE="$(BUILDEXE)"; \
        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 @@
+diff -ru python3.orig/Modules/Setup.dist python3/Modules/Setup.dist
+--- python3.orig/Modules/Setup.dist    2015-07-05 18:50:07.000000000 +0200
++++ python3/Modules/Setup.dist 2015-07-26 17:34:27.951490811 +0200
+@@ -181,7 +181,7 @@
  #_bisect _bisectmodule.c      # Bisection algorithms
  #_heapq _heapqmodule.c        # Heap queue algorithm
  
diff --git a/external/python3/python-3.3.3-elf-rpath.patch.1 
b/external/python3/python-3.3.3-elf-rpath.patch.1
index 33de913..945f7a5 100644
--- a/external/python3/python-3.3.3-elf-rpath.patch.1
+++ b/external/python3/python-3.3.3-elf-rpath.patch.1
@@ -1,13 +1,14 @@
 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 @@
+diff -ru python3.orig/Makefile.pre.in python3/Makefile.pre.in
+--- python3.orig/Makefile.pre.in       2015-07-26 20:29:07.126194320 +0200
++++ python3/Makefile.pre.in    2015-07-26 20:37:21.814227530 +0200
+@@ -550,7 +550,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
+ $(BUILDPYTHON):       Programs/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
+-      $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o 
$(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
++      $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/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
diff --git a/external/python3/python-3.3.3-py17797.patch.1 
b/external/python3/python-3.3.3-py17797.patch.1
index 8fcb703..0365717 100644
--- a/external/python3/python-3.3.3-py17797.patch.1
+++ b/external/python3/python-3.3.3-py17797.patch.1
@@ -1,27 +1,29 @@
 http://bugs.python.org/issue17797
 http://connect.microsoft.com/VisualStudio/feedback/details/785119/
 
-Visual Studio 2012 changed return value for fileno function that breaks
+Visual Studio 2013 changed return value for fileno function that breaks
 when python tries to check/setup stdin/out/err
 GetStdHandle on Windows XP behaves contrary to the documentation...
+MSVC 14.0 fixed this bug.
 
-diff --git a/Python/pythonrun.c b/Python/pythonrun.c
-index 91d56b7..d28ffc7 100644
---- a/Python/pythonrun.c
-+++ b/Python/pythonrun.c
-@@ -1015,13 +1015,28 @@ error:
+diff -ru python3.orig/Python/pylifecycle.c python3/Python/pylifecycle.c
+--- python3.orig/Python/pylifecycle.c  2015-07-05 18:50:08.000000000 +0200
++++ python3/Python/pylifecycle.c       2015-07-26 20:01:23.563082638 +0200
+@@ -1065,15 +1065,30 @@
  static int
  is_valid_fd(int fd)
  {
 -    int dummy_fd;
      if (fd < 0 || !_PyVerify_fd(fd))
          return 0;
+-    _Py_BEGIN_SUPPRESS_IPH
 -    dummy_fd = dup(fd);
--    if (dummy_fd < 0)
--        return 0;
--    close(dummy_fd);
+-    if (dummy_fd >= 0)
+-        close(dummy_fd);
+-    _Py_END_SUPPRESS_IPH
+-    return dummy_fd >= 0;
 +
-+#if defined(MS_WINDOWS) && defined(HAVE_FSTAT)
++#if defined(MS_WINDOWS) && defined(HAVE_FSTAT) && defined(_MSC_VER) && 
(_MSC_VER >= 1700 && _MSC_VER < 1900)
 +    /* dup (DuplicateHandle) doesn't say fd is a valid *file* handle.
 +     * It could be a current thread pseudo-handle.
 +     */
@@ -29,17 +31,19 @@ index 91d56b7..d28ffc7 100644
 +        struct stat buf;
 +        if (fstat(fd, &buf) < 0 && (errno == EBADF || errno == ENOENT))
 +            return 0;
++        else
++          return 1;
 +    }
 +#else
 +    {
-+        int dummy_fd;
-+        dummy_fd = dup(fd);
-+        if (dummy_fd < 0)
-+            return 0;
-+        close(dummy_fd);
++        int dummy_fd = dup(fd);
++        _Py_BEGIN_SUPPRESS_IPH
++        if (dummy_fd >= 0)
++            close(dummy_fd);
++        _Py_END_SUPPRESS_IPH
++        return dummy_fd >= 0;
 +    }
 +#endif
-+
-     return 1;
  }
  
+ /* Initialize sys.stdin, stdout, stderr and builtins.open */
diff --git a/external/python3/python-3.5.0-tcltk.disable.patch 
b/external/python3/python-3.5.0-tcltk.disable.patch
new file mode 100755
index 0000000..3aeebec
--- /dev/null
+++ b/external/python3/python-3.5.0-tcltk.disable.patch
@@ -0,0 +1,16 @@
+diff -ru python3.orig/PCbuild/pcbuild.sln python3/PCbuild/pcbuild.sln
+--- foo/python3.orig/PCbuild/pcbuild.sln       2015-08-22 19:12:48.508338400 
+0200
++++ foo/python3/PCbuild/pcbuild.sln    2015-08-22 19:15:50.130169800 +0200
+@@ -58,12 +58,6 @@
+ EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testmultiphase", 
"_testmultiphase.vcxproj", "{16BFE6F0-22EF-40B5-B831-7E937119EF10}"
+ EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tcl", "tcl.vcxproj", 
"{B5FD6F1D-129E-4BFF-9340-03606FAC7283}"
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tix", "tix.vcxproj", 
"{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}"
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tk", "tk.vcxproj", 
"{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}"
+-EndProject
+ Global
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution
+               Debug|Win32 = Debug|Win32
diff --git a/external/python3/python-3.5.tweak.strip.soabi.patch 
b/external/python3/python-3.5.tweak.strip.soabi.patch
new file mode 100644
index 0000000..48ac7f8
--- /dev/null
+++ b/external/python3/python-3.5.tweak.strip.soabi.patch
@@ -0,0 +1,12 @@
+diff -ru python3.orig/configure python3/configure
+--- misc/python3.orig/configure        2015-07-26 21:14:31.127377193 +0200
++++ misc/python3/configure     2015-07-26 21:21:34.975405648 +0200
+@@ -14388,7 +14388,7 @@
+ $as_echo "$ABIFLAGS" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking SOABI" >&5
+ $as_echo_n "checking SOABI... " >&6; }
+-SOABI='cpython-'`echo $VERSION | tr -d 
.`${ABIFLAGS}${PLATFORM_TRIPLET:+-$PLATFORM_TRIPLET}
++SOABI='cpython-'`echo $VERSION$ABIFLAGS`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SOABI" >&5
+ $as_echo "$SOABI" >&6; }
+ 
diff --git a/external/python3/ubsan.patch.0 b/external/python3/ubsan.patch.0
index e379817..700f43b 100644
--- a/external/python3/ubsan.patch.0
+++ b/external/python3/ubsan.patch.0
@@ -1,6 +1,7 @@
---- Modules/_ctypes/libffi/src/x86/ffi64.c
-+++ Modules/_ctypes/libffi/src/x86/ffi64.c
-@@ -545,11 +545,15 @@
+diff -ru python3.orig/Modules/_ctypes/libffi/src/x86/ffi64.c 
python3/Modules/_ctypes/libffi/src/x86/ffi64.c
+--- Modules/_ctypes/libffi/src/x86/ffi64.c     2015-07-05 18:50:07.000000000 
+0200
++++ Modules/_ctypes/libffi/src/x86/ffi64.c     2015-07-26 20:18:56.457153323 
+0200
+@@ -548,11 +548,15 @@
    tramp = (volatile unsigned short *) &closure->tramp[0];
  
    tramp[0] = 0xbb49;          /* mov <code>, %r11     */
@@ -20,19 +21,9 @@
  
    /* Set the carry bit iff the function uses any sse registers.
       This is clc or stc, together with the first byte of the jmp.  */
---- Objects/bytearrayobject.c
-+++ Objects/bytearrayobject.c
-@@ -294,7 +294,7 @@
-         PyBuffer_Release(&vo);
-         return NULL;
-     }
--    memcpy(self->ob_bytes + mysize, vo.buf, vo.len);
-+    if (vo.len != 0) memcpy(self->ob_bytes + mysize, vo.buf, vo.len);
-     PyBuffer_Release(&vo);
-     Py_INCREF(self);
-     return (PyObject *)self;
---- Objects/listobject.c
-+++ Objects/listobject.c
+diff -ru python3.orig/Objects/listobject.c python3/Objects/listobject.c
+--- Objects/listobject.c       2015-07-05 18:50:08.000000000 +0200
++++ Objects/listobject.c       2015-07-26 20:22:30.539167695 +0200
 @@ -641,7 +641,7 @@
              goto Error;
          }
@@ -41,32 +32,12 @@
 +    if (s != 0) memcpy(recycle, &item[ilow], s);
  
      if (d < 0) { /* Delete -d items */
-         memmove(&item[ihigh+d], &item[ihigh],
-@@ -2036,7 +2036,7 @@
-     if (keys != NULL) {
-         for (i = 0; i < saved_ob_size; i++)
-             Py_DECREF(keys[i]);
--        if (keys != &ms.temparray[saved_ob_size+1])
-+        if (keys != ((char *) ms.temparray) + (saved_ob_size+1) * sizeof 
(PyObject *))
-             PyMem_FREE(keys);
-     }
- 
---- Objects/longobject.c
-+++ Objects/longobject.c
-@@ -36,7 +36,7 @@
- static PyObject *
- get_small_int(sdigit ival)
- {
--    PyObject *v = (PyObject*)(small_ints + ival + NSMALLNEGINTS);
-+    PyObject *v = (PyObject*)(small_ints + (ival + NSMALLNEGINTS));
-     Py_INCREF(v);
- #ifdef COUNT_ALLOCS
-     if (ival >= 0)
+         Py_ssize_t tail;
 --- Modules/_ctypes/_ctypes.c
 +++ Modules/_ctypes/_ctypes.c
-@@ -1328,8 +1328,10 @@
-     if (stgdict->shape == NULL)
+@@ -1358,8 +1358,10 @@
          goto error;
+     }
      stgdict->shape[0] = length;
 -    memmove(&stgdict->shape[1], itemdict->shape,
 -        sizeof(Py_ssize_t) * (stgdict->ndim - 1));
diff --git a/external/python33/ExternalPackage_python3.mk 
b/external/python33/ExternalPackage_python3.mk
new file mode 100644
index 0000000..a2f51c1
--- /dev/null
+++ b/external/python33/ExternalPackage_python3.mk
@@ -0,0 +1,829 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,python3,python3))
+
+$(eval $(call gb_ExternalPackage_use_external_project,python3,python3))
+
+ifeq ($(OS)-$(COM),WNT-MSC)
+ifeq ($(CPUNAME),X86_64)
+python_arch_subdir=amd64/
+endif
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/bin/python.exe,PCbuild/$(python_arch_subdir)python$(if
 $(MSVC_USE_DEBUG_RUNTIME),_d).exe))
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if
 
$(MSVC_USE_DEBUG_RUNTIME),_d).dll,PCbuild/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)$(if
 $(MSVC_USE_DEBUG_RUNTIME),_d).dll))
+ifeq ($(MSVC_USE_DEBUG_RUNTIME),)
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/python$(PYTHON_VERSION_MAJOR).dll,PCbuild/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR).dll))
+endif
+$(eval $(call 
gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib,\
+       PCbuild/$(python_arch_subdir)_ctypes$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)_ctypes_test$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)_decimal$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)_elementtree$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)_msi$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd 
\
+       PCbuild/$(python_arch_subdir)_multiprocessing$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)_socket$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)_ssl$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd 
\
+       PCbuild/$(python_arch_subdir)_testbuffer$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)_testcapi$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)pyexpat$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)select$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)unicodedata$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+       PCbuild/$(python_arch_subdir)winsound$(if 
$(MSVC_USE_DEBUG_RUNTIME),_d).pyd \
+))
+else ifeq ($(OS),WNT) # MinGW
+# TODO how are C modules called on this platform?
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/bin/python.exe,python.exe))
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/python$(PYTHON_VERSION_MAJOR).dll,python$(PYTHON_VERSION_MAJOR).dll))
+else
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/python.bin,python))
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/libpython$(PYTHON_VERSION_MAJOR).so,libpython$(PYTHON_VERSION_MAJOR).so))
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/libpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so,libpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so))
+$(eval $(call 
gb_ExternalPackage_add_file,python3,$(LIBO_BIN_FOLDER)/libpython$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m.so-gdb.py,Tools/gdb/libpython.py))
+# versioned lib/libpython3.3m.so.1.0 appears to be unnecessary?
+
+# Unfortunately the python build system does not allow to explicitly enable or
+# disable these, it just tries to build them and then prints which did not
+# build successfully without stopping; so the build will break on delivering if
+# one of these failed to build.
+# Obviously this list should not contain stuff with external dependencies
+# that may not be available on baseline systems.
+ifneq ($(OS),AIX)
+$(eval $(call 
gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/lib-dynload,\
+       LO_lib/array.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so 
\
+       
LO_lib/atexit.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/audioop.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/binascii.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_bisect.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/cmath.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so 
\
+       
LO_lib/_codecs_cn.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_hk.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_iso2022.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so
 \
+       
LO_lib/_codecs_jp.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_kr.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_codecs_tw.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_crypt.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/_csv.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_ctypes.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_ctypes_test.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_datetime.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_decimal.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_elementtree.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/fcntl.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so 
\
+       LO_lib/grp.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       $(if $(DISABLE_OPENSSL),, \
+               
LO_lib/_hashlib.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       ) \
+       
LO_lib/_heapq.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/_json.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so 
\
+       
LO_lib/_lsprof.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/math.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/mmap.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_multibytecodec.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so
 \
+       
LO_lib/_multiprocessing.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so
 \
+       LO_lib/nis.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/ossaudiodev.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/parser.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_pickle.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_posixsubprocess.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so
 \
+       
LO_lib/pyexpat.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_random.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/resource.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/select.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_socket.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/spwd.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       $(if $(DISABLE_OPENSSL),, \
+               
LO_lib/_ssl.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       ) \
+       
LO_lib/_struct.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/syslog.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/termios.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_testbuffer.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       
LO_lib/_testcapi.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/time.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+       LO_lib/zlib.cpython-$(PYTHON_VERSION_MAJOR)$(PYTHON_VERSION_MINOR)m.so \
+))
+endif
+endif
+
+# headers are not delivered, but used from unpacked dir Include/
+# (+ toplevel for pyconfig.h)
+
+# that one is generated...
+ifneq ($(OS)-$(COM),WNT-MSC)
+$(eval $(call 
gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib,\
+       LO_lib/_sysconfigdata.py \
+))
+endif
+
+# packages not shipped:
+# dbm, sqlite3 - need some database stuff
+# curses - need curses to build the C module
+# idlelib, tkinter, turtledemo - need Tk to build the C module
+# test - probably unnecessary? was explicitly removed #i116738#
+# venv - why would we need virtual environments
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/plat-linux,\
+       Lib/plat-linux/regen \
+       Lib/plat-linux/CDROM.py \
+       Lib/plat-linux/DLFCN.py \
+       Lib/plat-linux/IN.py \
+       Lib/plat-linux/TYPES.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/plat-darwin,\
+       Lib/plat-darwin/IN.py \
+       Lib/plat-darwin/regen \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/plat-sunos5,\
+       Lib/plat-sunos5/regen \
+       Lib/plat-sunos5/CDIO.py \
+       Lib/plat-sunos5/DLFCN.py \
+       Lib/plat-sunos5/IN.py \
+       Lib/plat-sunos5/STROPTS.py \
+       Lib/plat-sunos5/TYPES.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/plat-aix4,\
+       Lib/plat-aix4/regen \
+       Lib/plat-aix4/IN.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib,\
+       LICENSE \
+       Lib/__future__.py \
+       Lib/__phello__.foo.py \
+       Lib/_compat_pickle.py \
+       Lib/_dummy_thread.py \
+       Lib/_markupbase.py \
+       Lib/_osx_support.py \
+       Lib/_pyio.py \
+       Lib/_strptime.py \
+       Lib/_threading_local.py \
+       Lib/_weakrefset.py \
+       Lib/abc.py \
+       Lib/aifc.py \
+       Lib/antigravity.py \
+       Lib/argparse.py \
+       Lib/ast.py \
+       Lib/asynchat.py \
+       Lib/asyncore.py \
+       Lib/base64.py \
+       Lib/bdb.py \
+       Lib/binhex.py \
+       Lib/bisect.py \
+       Lib/bz2.py \
+       Lib/cProfile.py \
+       Lib/calendar.py \
+       Lib/cgi.py \
+       Lib/cgitb.py \
+       Lib/chunk.py \
+       Lib/cmd.py \
+       Lib/code.py \
+       Lib/codecs.py \
+       Lib/codeop.py \
+       Lib/colorsys.py \
+       Lib/compileall.py \
+       Lib/configparser.py \
+       Lib/contextlib.py \
+       Lib/copy.py \
+       Lib/copyreg.py \
+       Lib/crypt.py \
+       Lib/csv.py \
+       Lib/datetime.py \
+       Lib/decimal.py \
+       Lib/difflib.py \
+       Lib/dis.py \
+       Lib/doctest.py \
+       Lib/dummy_threading.py \
+       Lib/filecmp.py \
+       Lib/fileinput.py \
+       Lib/fnmatch.py \
+       Lib/formatter.py \
+       Lib/fractions.py \
+       Lib/ftplib.py \
+       Lib/functools.py \
+       Lib/genericpath.py \
+       Lib/getopt.py \
+       Lib/getpass.py \
+       Lib/gettext.py \
+       Lib/glob.py \
+       Lib/gzip.py \
+       Lib/hashlib.py \
+       Lib/heapq.py \
+       Lib/hmac.py \
+       Lib/imaplib.py \
+       Lib/imghdr.py \
+       Lib/imp.py \
+       Lib/inspect.py \
+       Lib/io.py \
+       Lib/ipaddress.py \
+       Lib/keyword.py \
+       Lib/linecache.py \
+       Lib/locale.py \
+       Lib/lzma.py \
+       Lib/macpath.py \
+       Lib/macurl2path.py \
+       Lib/mailbox.py \
+       Lib/mailcap.py \
+       Lib/mimetypes.py \
+       Lib/modulefinder.py \
+       Lib/netrc.py \
+       Lib/nntplib.py \
+       Lib/ntpath.py \
+       Lib/nturl2path.py \
+       Lib/numbers.py \
+       Lib/opcode.py \
+       Lib/optparse.py \
+       Lib/os.py \
+       Lib/os2emxpath.py \
+       Lib/pdb.py \
+       Lib/pickle.py \
+       Lib/pickletools.py \
+       Lib/pipes.py \
+       Lib/pkgutil.py \
+       Lib/platform.py \
+       Lib/plistlib.py \
+       Lib/poplib.py \
+       Lib/posixpath.py \
+       Lib/pprint.py \
+       Lib/profile.py \
+       Lib/pstats.py \
+       Lib/pty.py \
+       Lib/py_compile.py \
+       Lib/pyclbr.py \
+       Lib/pydoc.py \
+       Lib/queue.py \
+       Lib/quopri.py \
+       Lib/random.py \
+       Lib/re.py \
+       Lib/reprlib.py \
+       Lib/rlcompleter.py \
+       Lib/runpy.py \
+       Lib/sched.py \
+       Lib/shelve.py \
+       Lib/shlex.py \
+       Lib/shutil.py \
+       Lib/site.py \
+       Lib/smtpd.py \
+       Lib/smtplib.py \
+       Lib/sndhdr.py \
+       Lib/socket.py \
+       Lib/socketserver.py \
+       Lib/sre_compile.py \
+       Lib/sre_constants.py \
+       Lib/sre_parse.py \
+       Lib/ssl.py \
+       Lib/stat.py \
+       Lib/string.py \
+       Lib/stringprep.py \
+       Lib/struct.py \
+       Lib/subprocess.py \
+       Lib/sunau.py \
+       Lib/symbol.py \
+       Lib/symtable.py \
+       Lib/sysconfig.py \
+       Lib/tabnanny.py \
+       Lib/tarfile.py \
+       Lib/telnetlib.py \
+       Lib/tempfile.py \
+       Lib/textwrap.py \
+       Lib/this.py \
+       Lib/threading.py \
+       Lib/timeit.py \
+       Lib/token.py \
+       Lib/tokenize.py \
+       Lib/trace.py \
+       Lib/traceback.py \
+       Lib/tty.py \
+       Lib/turtle.py \
+       Lib/types.py \
+       Lib/uu.py \
+       Lib/uuid.py \
+       Lib/warnings.py \
+       Lib/wave.py \
+       Lib/weakref.py \
+       Lib/webbrowser.py \
+       Lib/xdrlib.py \
+       Lib/zipfile.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/collections,\
+       Lib/collections/__init__.py \
+       Lib/collections/__main__.py \
+       Lib/collections/abc.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/concurrent,\
+       Lib/concurrent/__init__.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/concurrent/futures,\
+       Lib/concurrent/futures/__init__.py \
+       Lib/concurrent/futures/_base.py \
+       Lib/concurrent/futures/process.py \
+       Lib/concurrent/futures/thread.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/ctypes,\
+       Lib/ctypes/__init__.py \
+       Lib/ctypes/_endian.py \
+       Lib/ctypes/util.py \
+       Lib/ctypes/wintypes.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/ctypes/macholib,\
+       Lib/ctypes/macholib/README.ctypes \
+       Lib/ctypes/macholib/fetch_macholib \
+       Lib/ctypes/macholib/fetch_macholib.bat \
+       Lib/ctypes/macholib/__init__.py \
+       Lib/ctypes/macholib/dyld.py \
+       Lib/ctypes/macholib/dylib.py \
+       Lib/ctypes/macholib/framework.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/distutils,\
+       Lib/distutils/README \
+       Lib/distutils/__init__.py \
+       Lib/distutils/archive_util.py \
+       Lib/distutils/bcppcompiler.py \
+       Lib/distutils/ccompiler.py \
+       Lib/distutils/cmd.py \
+       Lib/distutils/config.py \
+       Lib/distutils/core.py \
+       Lib/distutils/cygwinccompiler.py \
+       Lib/distutils/debug.py \
+       Lib/distutils/dep_util.py \
+       Lib/distutils/dir_util.py \
+       Lib/distutils/dist.py \
+       Lib/distutils/emxccompiler.py \
+       Lib/distutils/errors.py \
+       Lib/distutils/extension.py \
+       Lib/distutils/fancy_getopt.py \
+       Lib/distutils/filelist.py \
+       Lib/distutils/file_util.py \
+       Lib/distutils/log.py \
+       Lib/distutils/msvc9compiler.py \
+       Lib/distutils/msvccompiler.py \
+       Lib/distutils/spawn.py \
+       Lib/distutils/sysconfig.py \
+       Lib/distutils/text_file.py \
+       Lib/distutils/unixccompiler.py \
+       Lib/distutils/util.py \
+       Lib/distutils/versionpredicate.py \
+       Lib/distutils/version.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/distutils/command,\
+       Lib/distutils/command/__init__.py \
+       Lib/distutils/command/bdist_dumb.py \
+       Lib/distutils/command/bdist_msi.py \
+       Lib/distutils/command/bdist.py \
+       Lib/distutils/command/bdist_rpm.py \
+       Lib/distutils/command/bdist_wininst.py \
+       Lib/distutils/command/build_clib.py \
+       Lib/distutils/command/build_ext.py \
+       Lib/distutils/command/build.py \
+       Lib/distutils/command/build_py.py \
+       Lib/distutils/command/build_scripts.py \
+       Lib/distutils/command/check.py \
+       Lib/distutils/command/clean.py \
+       Lib/distutils/command/config.py \
+       Lib/distutils/command/install_data.py \
+       Lib/distutils/command/install_egg_info.py \
+       Lib/distutils/command/install_headers.py \
+       Lib/distutils/command/install_lib.py \
+       Lib/distutils/command/install.py \
+       Lib/distutils/command/install_scripts.py \
+       Lib/distutils/command/register.py \
+       Lib/distutils/command/sdist.py \
+       Lib/distutils/command/upload.py \
+       Lib/distutils/command/wininst-10.0-amd64.exe \
+       Lib/distutils/command/wininst-10.0.exe \
+       Lib/distutils/command/wininst-6.0.exe \
+       Lib/distutils/command/wininst-7.1.exe \
+       Lib/distutils/command/wininst-8.0.exe \
+       Lib/distutils/command/wininst-9.0-amd64.exe \
+       Lib/distutils/command/wininst-9.0.exe \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/email,\
+       Lib/email/__init__.py \
+       Lib/email/_encoded_words.py \
+       Lib/email/_header_value_parser.py \
+       Lib/email/_parseaddr.py \
+       Lib/email/_policybase.py \
+       Lib/email/architecture.rst \
+       Lib/email/base64mime.py \
+       Lib/email/charset.py \
+       Lib/email/encoders.py \
+       Lib/email/errors.py \
+       Lib/email/feedparser.py \
+       Lib/email/generator.py \
+       Lib/email/header.py \
+       Lib/email/headerregistry.py \
+       Lib/email/iterators.py \
+       Lib/email/message.py \
+       Lib/email/parser.py \
+       Lib/email/policy.py \
+       Lib/email/quoprimime.py \
+       Lib/email/utils.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/email/mime,\
+       Lib/email/mime/__init__.py \
+       Lib/email/mime/application.py \
+       Lib/email/mime/audio.py \
+       Lib/email/mime/base.py \
+       Lib/email/mime/image.py \
+       Lib/email/mime/message.py \
+       Lib/email/mime/multipart.py \
+       Lib/email/mime/nonmultipart.py \
+       Lib/email/mime/text.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/encodings,\
+       Lib/encodings/__init__.py \
+       Lib/encodings/aliases.py \
+       Lib/encodings/ascii.py \
+       Lib/encodings/base64_codec.py \
+       Lib/encodings/big5hkscs.py \
+       Lib/encodings/big5.py \
+       Lib/encodings/bz2_codec.py \
+       Lib/encodings/charmap.py \
+       Lib/encodings/cp037.py \
+       Lib/encodings/cp1006.py \
+       Lib/encodings/cp1026.py \
+       Lib/encodings/cp1140.py \
+       Lib/encodings/cp1250.py \
+       Lib/encodings/cp1251.py \
+       Lib/encodings/cp1252.py \
+       Lib/encodings/cp1253.py \
+       Lib/encodings/cp1254.py \
+       Lib/encodings/cp1255.py \
+       Lib/encodings/cp1256.py \
+       Lib/encodings/cp1257.py \
+       Lib/encodings/cp1258.py \
+       Lib/encodings/cp424.py \
+       Lib/encodings/cp437.py \
+       Lib/encodings/cp500.py \
+       Lib/encodings/cp65001.py \
+       Lib/encodings/cp720.py \
+       Lib/encodings/cp737.py \
+       Lib/encodings/cp775.py \
+       Lib/encodings/cp850.py \
+       Lib/encodings/cp852.py \
+       Lib/encodings/cp855.py \
+       Lib/encodings/cp856.py \
+       Lib/encodings/cp857.py \
+       Lib/encodings/cp858.py \
+       Lib/encodings/cp860.py \
+       Lib/encodings/cp861.py \
+       Lib/encodings/cp862.py \
+       Lib/encodings/cp863.py \
+       Lib/encodings/cp864.py \
+       Lib/encodings/cp865.py \
+       Lib/encodings/cp866.py \
+       Lib/encodings/cp869.py \
+       Lib/encodings/cp874.py \
+       Lib/encodings/cp875.py \
+       Lib/encodings/cp932.py \
+       Lib/encodings/cp949.py \
+       Lib/encodings/cp950.py \
+       Lib/encodings/euc_jis_2004.py \
+       Lib/encodings/euc_jisx0213.py \
+       Lib/encodings/euc_jp.py \
+       Lib/encodings/euc_kr.py \
+       Lib/encodings/gb18030.py \
+       Lib/encodings/gb2312.py \
+       Lib/encodings/gbk.py \
+       Lib/encodings/hex_codec.py \
+       Lib/encodings/hp_roman8.py \
+       Lib/encodings/hz.py \
+       Lib/encodings/idna.py \
+       Lib/encodings/iso2022_jp_1.py \
+       Lib/encodings/iso2022_jp_2004.py \
+       Lib/encodings/iso2022_jp_2.py \
+       Lib/encodings/iso2022_jp_3.py \
+       Lib/encodings/iso2022_jp_ext.py \
+       Lib/encodings/iso2022_jp.py \
+       Lib/encodings/iso2022_kr.py \
+       Lib/encodings/iso8859_10.py \
+       Lib/encodings/iso8859_11.py \
+       Lib/encodings/iso8859_13.py \
+       Lib/encodings/iso8859_14.py \
+       Lib/encodings/iso8859_15.py \
+       Lib/encodings/iso8859_16.py \
+       Lib/encodings/iso8859_1.py \
+       Lib/encodings/iso8859_2.py \
+       Lib/encodings/iso8859_3.py \
+       Lib/encodings/iso8859_4.py \
+       Lib/encodings/iso8859_5.py \
+       Lib/encodings/iso8859_6.py \
+       Lib/encodings/iso8859_7.py \
+       Lib/encodings/iso8859_8.py \
+       Lib/encodings/iso8859_9.py \
+       Lib/encodings/johab.py \
+       Lib/encodings/koi8_r.py \
+       Lib/encodings/koi8_u.py \
+       Lib/encodings/latin_1.py \
+       Lib/encodings/mac_arabic.py \
+       Lib/encodings/mac_centeuro.py \
+       Lib/encodings/mac_croatian.py \
+       Lib/encodings/mac_cyrillic.py \
+       Lib/encodings/mac_farsi.py \
+       Lib/encodings/mac_greek.py \
+       Lib/encodings/mac_iceland.py \
+       Lib/encodings/mac_latin2.py \
+       Lib/encodings/mac_romanian.py \
+       Lib/encodings/mac_roman.py \
+       Lib/encodings/mac_turkish.py \
+       Lib/encodings/mbcs.py \
+       Lib/encodings/palmos.py \
+       Lib/encodings/ptcp154.py \
+       Lib/encodings/punycode.py \
+       Lib/encodings/quopri_codec.py \
+       Lib/encodings/raw_unicode_escape.py \
+       Lib/encodings/rot_13.py \
+       Lib/encodings/shift_jis_2004.py \
+       Lib/encodings/shift_jis.py \
+       Lib/encodings/shift_jisx0213.py \
+       Lib/encodings/tis_620.py \
+       Lib/encodings/undefined.py \
+       Lib/encodings/unicode_escape.py \
+       Lib/encodings/unicode_internal.py \
+       Lib/encodings/utf_16_be.py \
+       Lib/encodings/utf_16_le.py \
+       Lib/encodings/utf_16.py \
+       Lib/encodings/utf_32_be.py \
+       Lib/encodings/utf_32_le.py \
+       Lib/encodings/utf_32.py \
+       Lib/encodings/utf_7.py \
+       Lib/encodings/utf_8.py \
+       Lib/encodings/utf_8_sig.py \
+       Lib/encodings/uu_codec.py \
+       Lib/encodings/zlib_codec.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/html,\
+       Lib/html/__init__.py \
+       Lib/html/entities.py \
+       Lib/html/parser.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/http,\
+       Lib/http/__init__.py \
+       Lib/http/client.py \
+       Lib/http/cookiejar.py \
+       Lib/http/cookies.py \
+       Lib/http/server.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/importlib,\
+       Lib/importlib/__init__.py \
+       Lib/importlib/_bootstrap.py \
+       Lib/importlib/abc.py \
+       Lib/importlib/machinery.py \
+       Lib/importlib/util.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/json,\
+       Lib/json/__init__.py \
+       Lib/json/decoder.py \
+       Lib/json/encoder.py \
+       Lib/json/scanner.py \
+       Lib/json/tool.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/lib2to3,\
+       Lib/lib2to3/Grammar.txt \
+       Lib/lib2to3/PatternGrammar.txt \
+       Lib/lib2to3/__init__.py \
+       Lib/lib2to3/__main__.py \
+       Lib/lib2to3/btm_matcher.py \
+       Lib/lib2to3/btm_utils.py \
+       Lib/lib2to3/fixer_base.py \
+       Lib/lib2to3/fixer_util.py \
+       Lib/lib2to3/main.py \
+       Lib/lib2to3/patcomp.py \
+       Lib/lib2to3/pygram.py \
+       Lib/lib2to3/pytree.py \
+       Lib/lib2to3/refactor.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/lib2to3/fixes,\
+       Lib/lib2to3/fixes/__init__.py \
+       Lib/lib2to3/fixes/fix_apply.py \
+       Lib/lib2to3/fixes/fix_basestring.py \
+       Lib/lib2to3/fixes/fix_buffer.py \
+       Lib/lib2to3/fixes/fix_callable.py \
+       Lib/lib2to3/fixes/fix_dict.py \
+       Lib/lib2to3/fixes/fix_except.py \
+       Lib/lib2to3/fixes/fix_execfile.py \
+       Lib/lib2to3/fixes/fix_exec.py \
+       Lib/lib2to3/fixes/fix_exitfunc.py \
+       Lib/lib2to3/fixes/fix_filter.py \
+       Lib/lib2to3/fixes/fix_funcattrs.py \
+       Lib/lib2to3/fixes/fix_future.py \
+       Lib/lib2to3/fixes/fix_getcwdu.py \
+       Lib/lib2to3/fixes/fix_has_key.py \
+       Lib/lib2to3/fixes/fix_idioms.py \
+       Lib/lib2to3/fixes/fix_import.py \
+       Lib/lib2to3/fixes/fix_imports2.py \
+       Lib/lib2to3/fixes/fix_imports.py \
+       Lib/lib2to3/fixes/fix_input.py \
+       Lib/lib2to3/fixes/fix_intern.py \
+       Lib/lib2to3/fixes/fix_isinstance.py \
+       Lib/lib2to3/fixes/fix_itertools_imports.py \
+       Lib/lib2to3/fixes/fix_itertools.py \
+       Lib/lib2to3/fixes/fix_long.py \
+       Lib/lib2to3/fixes/fix_map.py \
+       Lib/lib2to3/fixes/fix_metaclass.py \
+       Lib/lib2to3/fixes/fix_methodattrs.py \
+       Lib/lib2to3/fixes/fix_ne.py \
+       Lib/lib2to3/fixes/fix_next.py \
+       Lib/lib2to3/fixes/fix_nonzero.py \
+       Lib/lib2to3/fixes/fix_numliterals.py \
+       Lib/lib2to3/fixes/fix_operator.py \
+       Lib/lib2to3/fixes/fix_paren.py \
+       Lib/lib2to3/fixes/fix_print.py \
+       Lib/lib2to3/fixes/fix_raise.py \
+       Lib/lib2to3/fixes/fix_raw_input.py \
+       Lib/lib2to3/fixes/fix_reduce.py \
+       Lib/lib2to3/fixes/fix_renames.py \
+       Lib/lib2to3/fixes/fix_repr.py \
+       Lib/lib2to3/fixes/fix_set_literal.py \
+       Lib/lib2to3/fixes/fix_standarderror.py \
+       Lib/lib2to3/fixes/fix_sys_exc.py \
+       Lib/lib2to3/fixes/fix_throw.py \
+       Lib/lib2to3/fixes/fix_tuple_params.py \
+       Lib/lib2to3/fixes/fix_types.py \
+       Lib/lib2to3/fixes/fix_unicode.py \
+       Lib/lib2to3/fixes/fix_urllib.py \
+       Lib/lib2to3/fixes/fix_ws_comma.py \
+       Lib/lib2to3/fixes/fix_xrange.py \
+       Lib/lib2to3/fixes/fix_xreadlines.py \
+       Lib/lib2to3/fixes/fix_zip.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/pgen2,\
+       Lib/lib2to3/pgen2/__init__.py \
+       Lib/lib2to3/pgen2/conv.py \
+       Lib/lib2to3/pgen2/driver.py \
+       Lib/lib2to3/pgen2/grammar.py \
+       Lib/lib2to3/pgen2/literals.py \
+       Lib/lib2to3/pgen2/parse.py \
+       Lib/lib2to3/pgen2/pgen.py \
+       Lib/lib2to3/pgen2/tokenize.py \
+       Lib/lib2to3/pgen2/token.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/logging,\
+       Lib/logging/__init__.py \
+       Lib/logging/config.py \
+       Lib/logging/handlers.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/multiprocessing,\
+       Lib/multiprocessing/__init__.py \
+       Lib/multiprocessing/connection.py \
+       Lib/multiprocessing/forking.py \
+       Lib/multiprocessing/heap.py \
+       Lib/multiprocessing/managers.py \
+       Lib/multiprocessing/pool.py \
+       Lib/multiprocessing/process.py \
+       Lib/multiprocessing/queues.py \
+       Lib/multiprocessing/reduction.py \
+       Lib/multiprocessing/sharedctypes.py \
+       Lib/multiprocessing/synchronize.py \
+       Lib/multiprocessing/util.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/multiprocessing/dummy,\
+       Lib/multiprocessing/dummy/__init__.py \
+       Lib/multiprocessing/dummy/connection.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/pydoc_data,\
+       Lib/pydoc_data/__init__.py \
+       Lib/pydoc_data/_pydoc.css \
+       Lib/pydoc_data/topics.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/unittest,\
+       Lib/unittest/__init__.py \
+       Lib/unittest/__main__.py \
+       Lib/unittest/case.py \
+       Lib/unittest/loader.py \
+       Lib/unittest/main.py \
+       Lib/unittest/mock.py \
+       Lib/unittest/result.py \
+       Lib/unittest/runner.py \
+       Lib/unittest/signals.py \
+       Lib/unittest/suite.py \
+       Lib/unittest/util.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/unittest/test,\
+       Lib/unittest/test/__init__.py \
+       Lib/unittest/test/dummy.py \
+       Lib/unittest/test/support.py \
+       Lib/unittest/test/test_assertions.py \
+       Lib/unittest/test/test_break.py \
+       Lib/unittest/test/test_case.py \
+       Lib/unittest/test/test_discovery.py \
+       Lib/unittest/test/test_functiontestcase.py \
+       Lib/unittest/test/test_loader.py \
+       Lib/unittest/test/test_program.py \
+       Lib/unittest/test/test_result.py \
+       Lib/unittest/test/test_runner.py \
+       Lib/unittest/test/test_setups.py \
+       Lib/unittest/test/test_skipping.py \
+       Lib/unittest/test/test_suite.py \
+       Lib/unittest/test/_test_warnings.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/unittest/test/testmock,\
+       Lib/unittest/test/testmock/__init__.py \
+       Lib/unittest/test/testmock/support.py \
+       Lib/unittest/test/testmock/testcallable.py \
+       Lib/unittest/test/testmock/testhelpers.py \
+       Lib/unittest/test/testmock/testmagicmethods.py \
+       Lib/unittest/test/testmock/testmock.py \
+       Lib/unittest/test/testmock/testpatch.py \
+       Lib/unittest/test/testmock/testsentinel.py \
+       Lib/unittest/test/testmock/testwith.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/urllib,\
+       Lib/urllib/__init__.py \
+       Lib/urllib/error.py \
+       Lib/urllib/parse.py \
+       Lib/urllib/request.py \
+       Lib/urllib/response.py \
+       Lib/urllib/robotparser.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/wsgiref,\
+       Lib/wsgiref/__init__.py \
+       Lib/wsgiref/handlers.py \
+       Lib/wsgiref/headers.py \
+       Lib/wsgiref/simple_server.py \
+       Lib/wsgiref/util.py \
+       Lib/wsgiref/validate.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/xml,\
+       Lib/xml/__init__.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/xml/dom,\
+       Lib/xml/dom/__init__.py \
+       Lib/xml/dom/NodeFilter.py \
+       Lib/xml/dom/domreg.py \
+       Lib/xml/dom/expatbuilder.py \
+       Lib/xml/dom/minicompat.py \
+       Lib/xml/dom/minidom.py \
+       Lib/xml/dom/pulldom.py \
+       Lib/xml/dom/xmlbuilder.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/xml/etree,\
+       Lib/xml/etree/__init__.py \
+       Lib/xml/etree/ElementInclude.py \
+       Lib/xml/etree/ElementPath.py \
+       Lib/xml/etree/ElementTree.py \
+       Lib/xml/etree/cElementTree.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/xml/parsers,\
+       Lib/xml/parsers/__init__.py \
+       Lib/xml/parsers/expat.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/xml/sax,\
+       Lib/xml/sax/__init__.py \
+       Lib/xml/sax/_exceptions.py \
+       Lib/xml/sax/expatreader.py \
+       Lib/xml/sax/handler.py \
+       Lib/xml/sax/saxutils.py \
+       Lib/xml/sax/xmlreader.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/xmlrpc,\
+       Lib/xmlrpc/__init__.py \
+       Lib/xmlrpc/client.py \
+       Lib/xmlrpc/server.py \
+))
+
+$(eval $(call 
gb_ExternalPackage_add_unpacked_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/site-packages,\
+       Lib/site-packages/README \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/python33/ExternalProject_python3.mk 
b/external/python33/ExternalProject_python3.mk
new file mode 100644
index 0000000..098b1ea
--- /dev/null
+++ b/external/python33/ExternalProject_python3.mk
@@ -0,0 +1,148 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,python3))
+
+$(eval $(call gb_ExternalProject_use_externals,python3,\
+       expat \
+       openssl \
+       zlib \
+))
+
+$(eval $(call gb_ExternalProject_register_targets,python3,\
+       build \
+       $(if $(filter MACOSX,$(OS)),\
+               fixscripts \
+               fixinstallnames \
+               executables \
+       ) \
+))
+
+ifeq ($(OS)$(COM),WNTMSC)
+
+# TODO: using Debug configuration and related mangling of pyconfig.h
+
+# at least for MSVC 2008 it is necessary to clear MAKEFLAGS because
+# nmake is invoked
+$(call gb_ExternalProject_get_state_target,python3,build) :
+       $(call gb_ExternalProject_run,build,\
+               MAKEFLAGS= MSBuild.exe pcbuild.sln /t:Build \
+                       /p:Configuration=$(if 
$(MSVC_USE_DEBUG_RUNTIME),Debug,Release) \
+                       /p:Platform=$(if $(filter INTEL,$(CPUNAME)),Win32,x64) \
+                       $(if $(filter 120,$(VCVER)),/p:PlatformToolset=v120 \
+                               /p:VisualStudioVersion=12.0 /ToolsVersion:12.0) 
\
+       ,PCBuild)
+
+else
+
+# this was added in 2004, hopefully is obsolete now (and why only intel 
anyway)? $(if $(filter SOLARIS-INTEL,$(OS)$(CPUNAME)),--disable-ipv6)
+
+# --with-system-expat: this should find the one in the solver (or system)
+
+# create a symlink "LO_lib" because the .so are in a directory with platform
+# specific name like build/lib.linux-x86_64-3.3
+
+python3_cflags = $(ZLIB_CFLAGS)
+ifneq (,$(ENABLE_VALGRIND))
+    python3_cflags += $(VALGRIND_CFLAGS)
+endif
+
+$(call gb_ExternalProject_get_state_target,python3,build) :
+       $(call gb_ExternalProject_run,build,\
+               ./configure \
+               $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM)) \
+               $(if $(ENABLE_VALGRIND),--with-valgrind) \
+               --prefix=/python-inst \
+               $(if $(filter MACOSX,$(OS)),,--with-system-expat) \
+               $(if $(filter AIX,$(OS)), \
+                       --disable-ipv6 --with-threads OPT="-g0 -fwrapv -O3 
-Wall", \
+                       $(if $(gb_Module_CURRENTMODULE_DEBUG_ENABLED), \
+                               OPT="$(gb_COMPILERNOOPTFLAGS) 
$(gb_DEBUG_CFLAGS)")) \
+               $(if $(filter WNT-GCC,$(OS)-$(COM)),--with-threads 
ac_cv_printf_zd_format=no) \
+               $(if $(filter MACOSX,$(OS)), \
+                       $(if $(filter 
INTEL,$(CPUNAME)),--enable-universalsdk=$(MACOSX_SDK_PATH) \
+                                --with-universal-archs=intel \
+            ) \
+                       
--enable-framework=/@__________________________________________________OOO 
--with-framework-name=LibreOfficePython, \
+                       --enable-shared \
+               ) \
+               CC="$(strip $(CC) \
+                       $(if $(SYSTEM_OPENSSL),,-I$(call 
gb_UnpackedTarball_get_dir,openssl)/include \
+                               $(if $(DISABLE_OPENSSL),,-I$(call 
gb_UnpackedTarball_get_dir,openssl)/include)) \
+                       $(if $(SYSTEM_EXPAT),,-I$(call 
gb_UnpackedTarball_get_dir,expat)/lib) \
+                       $(if $(SYSBASE), -I$(SYSBASE)/usr/include) \
+                       )" \
+               $(if $(python3_cflags),CFLAGS='$(python3_cflags)') \
+               $(if $(filter -fsanitize=%,$(CC)),LINKCC="$(CXX)") \
+               LDFLAGS="$(strip $(LDFLAGS) \
+                       $(if $(SYSTEM_OPENSSL),,-L$(call 
gb_UnpackedTarball_get_dir,openssl)) \
+                       $(if $(SYSTEM_EXPAT),,-L$(gb_StaticLibrary_WORKDIR)) \
+                       $(if $(SYSBASE), -L$(SYSBASE)/usr/lib) \
+                       $(if $(filter WNT-GCC,$(OS)-$(COM)), -shared-libgcc \
+                               $(if 
$(MINGW_SHARED_GCCLIB),-Wl$(COMMA)--enable-runtime-pseudo-reloc-v2 
-Wl$(COMMA)--export-all-symbols)) \
+                       $(gb_LTOFLAGS) \
+                       )" \
+               && MAKEFLAGS= $(MAKE) \
+                       $(if $(filter 
MACOSX,$(OS)),DESTDIR=$(EXTERNAL_WORKDIR)/python-inst install) \
+               && ln -s build/lib.* LO_lib \
+       )
+
+endif
+
+ifeq ($(OS),MACOSX)
+
+python3_fw_prefix=$(call 
gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO/LibreOfficePython.framework
+
+# rule to allow relocating the whole framework, removing reference to 
buildinstallation directory
+$(call gb_ExternalProject_get_state_target,python3,fixscripts) : $(call 
gb_ExternalProject_get_state_target,python3,build)
+       $(call gb_Output_announce,python3 - remove reference to installroot 
from scripts,build,CUS,5)
+       $(COMMAND_ECHO)for file in \
+                       
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/2to3
 \
+                       
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/2to3-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)
 \
+                       
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/idle$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)
 \
+                       
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/pydoc$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)
 \
+                       
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)-config
 \
+                       
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/python$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)m-config
 \
+                       
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/bin/pyvenv-$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)
 ; do \
+       { rm "$$file" && $(gb_AWK) '\
+               BEGIN {print "#!/bin/bash\n\
+origpath=$$(pwd)\n\
+bindir=$$(cd $$(dirname \"$$0\") ; pwd)\n\
+cd \"$$origpath\"\n\
+\"$$bindir/../Resources/Python.app/Contents/MacOS/LibreOfficePython\" - $$@ 
<<EOF"} \
+               FNR==1{next} \
+                     {print} \
+               END   {print "EOF"}' > "$$file" ; } < "$$file" ; chmod +x 
"$$file" ; done
+       touch $@
+
+$(call gb_ExternalProject_get_state_target,python3,fixinstallnames) : $(call 
gb_ExternalProject_get_state_target,python3,build)
+       $(INSTALL_NAME_TOOL) -change \
+               
$(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/LibreOfficePython
 \

... etc. - the rest is truncated
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to