summaryrefslogtreecommitdiff
path: root/python3
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2012-11-17 00:39:31 +0100
committerMichael Stahl <mstahl@redhat.com>2012-11-17 00:45:13 +0100
commit8a6c5b2fcbf2b6d87529e91f58aa41c02d0fc990 (patch)
treeb8d29332aa6cd34398f4b19ae1001951b5d867bc /python3
parent7728967fecb9682e1cfaf385827e600a80ac0ed6 (diff)
python3: add module for internal Python 3 build (not active yet)
The module builds here on Fedora 17 and with MSVC2008. MacOS X is unfinished and probably breaks, which is why the module is disabled now. These patches from module python were dropped: Integrated upstream: - Python.mipsel-py4305.patch - Python-2.6.1-py4768.patch - Python-2.6.1-py2422.patch (modified, use --with-valgrind) - Python-2.6.1-urllib.patch - Python-2.6.1-py8067.patch Obsolete: - Python-2.6.1-svn-1.7.patch (migrated to non-toy HG now) - Python-parallel-make.patch - Python-2.6.1-nohardlink.patch (no idea why that would be needed, NFS should support hard links) - Python-2.6.1-sysbase.patch (Solaris 11 setsolar specific patch) - Python-2.6.1-cross.berkeleydb.patch (berekeleydb removal) - Python-2.6.2-bdb48.patch - Python-2.6.1-vc10.patch (upstream supports vc10) An attempt to cross compile with mingw that proved unsucessful according to dtardon; there is upstream work on this topic that is possibly already in 3.3: http://bugs.python.org/issue8067 - Python-2.6.2-cross.patch - Python-2.6.2-cross.fix-configure.patch Change-Id: Iba9a3cab955983e173e12110f93a6f381d86f9ce
Diffstat (limited to 'python3')
-rw-r--r--python3/ExternalPackage_python3.mk827
-rw-r--r--python3/ExternalProject_python3.mk85
-rw-r--r--python3/Makefile7
-rw-r--r--python3/Module_python3.mk25
-rw-r--r--python3/Package_python3_mk.mk15
-rw-r--r--python3/README1
-rw-r--r--python3/UnpackedTarball_python3.mk36
-rw-r--r--python3/i100492-freebsd.patch.280
-rw-r--r--python3/prj/build.lst2
-rw-r--r--python3/prj/d.lst0
-rw-r--r--python3/python-3.3.0-aix.patch.1159
-rw-r--r--python3/python-3.3.0-darwin.patch.126
-rw-r--r--python3/python-3.3.0-i42553.patch.217
-rw-r--r--python3/python-3.3.0-msvc-disable.patch.1123
-rw-r--r--python3/python-3.3.0-msvc-x64.patch.1229
-rw-r--r--python3/python-3.3.0-msvc2012.patch.172
-rw-r--r--python3/python-3.3.0-ssl.patch.1360
-rw-r--r--python3/pyversion.Makefile22
18 files changed, 2086 insertions, 0 deletions
diff --git a/python3/ExternalPackage_python3.mk b/python3/ExternalPackage_python3.mk
new file mode 100644
index 000000000000..7138a60c872e
--- /dev/null
+++ b/python3/ExternalPackage_python3.mk
@@ -0,0 +1,827 @@
+# -*- 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)
+$(eval $(call gb_ExternalPackage_add_file,python3,bin/python.exe,LO_lib/python.exe))
+$(eval $(call gb_ExternalPackage_add_file,python3,bin/python3.dll,LO_lib/python3.dll))
+$(eval $(call gb_ExternalPackage_add_file,python3,bin/python33.dll,LO_lib/python33.dll))
+$(eval $(call gb_ExternalPackage_add_file,python3,lib/python3.lib,LO_lib/python3.lib))
+$(eval $(call gb_ExternalPackage_add_file,python3,lib/python33.lib,LO_lib/python33.lib))
+$(eval $(call gb_ExternalPackage_add_files,python3,lib/python,\
+ LO_lib/_ctypes.pyd \
+ LO_lib/_ctypes_test.pyd \
+ LO_lib/_decimal.pyd \
+ LO_lib/_elementtree.pyd \
+ LO_lib/_msi.pyd \
+ LO_lib/_multiprocessing.pyd \
+ LO_lib/_socket.pyd \
+ LO_lib/_ssl.pyd \
+ LO_lib/_testbuffer.pyd \
+ LO_lib/_testcapi.pyd \
+ LO_lib/pyexpat.pyd \
+ LO_lib/select.pyd \
+ LO_lib/unicodedata.pyd \
+ LO_lib/winsound.pyd \
+ LO_lib/xxlimited.pyd \
+))
+else ifeq ($(OS),WNT) # MinGW
+# TODO how are C modules called on this platform?
+$(eval $(call gb_ExternalPackage_add_file,python3,bin/python.exe,python.exe))
+$(eval $(call gb_ExternalPackage_add_file,python3,bin/python3.dll,python3.dll))
+else
+ifeq ($(OS),MACOSX)
+# TODO what is this?
+$(eval $(call gb_ExternalPackage_add_file,python3,lib/OOoPython.framework/OOoPython,python))
+$(eval $(call gb_ExternalPackage_add_file,python3,lib/OOoPython.framework/Versions/2.6,OOoPython.framework/Versions/2.6))
+else # ELF UNIX
+$(eval $(call gb_ExternalPackage_add_file,python3,bin/python,python))
+$(eval $(call gb_ExternalPackage_add_file,python3,lib/libpython3.so,libpython3.so))
+$(eval $(call gb_ExternalPackage_add_file,python3,lib/libpython3.3m.so,libpython3.3m.so))
+# versioned lib/libpython3.3m.so.1.0 appears to be unnecessary?
+endif
+
+# 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.
+
+$(eval $(call gb_ExternalPackage_add_files,python3,lib/python/lib-dynload,\
+ LO_lib/array.cpython-33m.so \
+ LO_lib/atexit.cpython-33m.so \
+ LO_lib/audioop.cpython-33m.so \
+ LO_lib/binascii.cpython-33m.so \
+ LO_lib/_bisect.cpython-33m.so \
+ LO_lib/cmath.cpython-33m.so \
+ LO_lib/_codecs_cn.cpython-33m.so \
+ LO_lib/_codecs_hk.cpython-33m.so \
+ LO_lib/_codecs_iso2022.cpython-33m.so \
+ LO_lib/_codecs_jp.cpython-33m.so \
+ LO_lib/_codecs_kr.cpython-33m.so \
+ LO_lib/_codecs_tw.cpython-33m.so \
+ LO_lib/_crypt.cpython-33m.so \
+ LO_lib/_csv.cpython-33m.so \
+ LO_lib/_ctypes.cpython-33m.so \
+ LO_lib/_ctypes_test.cpython-33m.so \
+ LO_lib/_datetime.cpython-33m.so \
+ LO_lib/_decimal.cpython-33m.so \
+ LO_lib/_elementtree.cpython-33m.so \
+ LO_lib/fcntl.cpython-33m.so \
+ LO_lib/grp.cpython-33m.so \
+ LO_lib/_hashlib.cpython-33m.so \
+ LO_lib/_heapq.cpython-33m.so \
+ LO_lib/_json.cpython-33m.so \
+ LO_lib/_lsprof.cpython-33m.so \
+ LO_lib/math.cpython-33m.so \
+ LO_lib/mmap.cpython-33m.so \
+ LO_lib/_multibytecodec.cpython-33m.so \
+ LO_lib/_multiprocessing.cpython-33m.so \
+ LO_lib/nis.cpython-33m.so \
+ LO_lib/ossaudiodev.cpython-33m.so \
+ LO_lib/parser.cpython-33m.so \
+ LO_lib/_pickle.cpython-33m.so \
+ LO_lib/_posixsubprocess.cpython-33m.so \
+ LO_lib/pyexpat.cpython-33m.so \
+ LO_lib/_random.cpython-33m.so \
+ LO_lib/resource.cpython-33m.so \
+ LO_lib/select.cpython-33m.so \
+ LO_lib/_socket.cpython-33m.so \
+ LO_lib/spwd.cpython-33m.so \
+ LO_lib/_ssl.cpython-33m.so \
+ LO_lib/_struct.cpython-33m.so \
+ LO_lib/syslog.cpython-33m.so \
+ LO_lib/termios.cpython-33m.so \
+ LO_lib/_testbuffer.cpython-33m.so \
+ LO_lib/_testcapi.cpython-33m.so \
+ LO_lib/time.cpython-33m.so \
+ LO_lib/zlib.cpython-33m.so \
+))
+endif
+
+# headers are not delivered, but used from unpacked dir Include/
+# (+ toplevel for pyconfig.h)
+
+# 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,lib/python/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,lib/python/plat-darwin,\
+ Lib/plat-darwin/IN.py \
+ Lib/plat-darwin/regen \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/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,lib/python/plat-aix4,\
+ Lib/plat-aix4/regen \
+ Lib/plat-aix4/IN.py \
+))
+
+# that one is generated...
+ifneq ($(OS)-$(COM),WNT-MSC)
+$(eval $(call gb_ExternalPackage_add_files,python3,lib/python,\
+ Lib/_sysconfigdata.py \
+))
+endif
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python,\
+ 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,lib/python/collections,\
+ Lib/collections/__init__.py \
+ Lib/collections/__main__.py \
+ Lib/collections/abc.py \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/concurrent,\
+ Lib/concurrent/__init__.py \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/html,\
+ Lib/html/__init__.py \
+ Lib/html/entities.py \
+ Lib/html/parser.py \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/logging,\
+ Lib/logging/__init__.py \
+ Lib/logging/config.py \
+ Lib/logging/handlers.py \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/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,lib/python/multiprocessing/dummy,\
+ Lib/multiprocessing/dummy/__init__.py \
+ Lib/multiprocessing/dummy/connection.py \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/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,lib/python/xml,\
+ Lib/xml/__init__.py \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/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,lib/python/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,lib/python/xml/parsers,\
+ Lib/xml/parsers/__init__.py \
+ Lib/xml/parsers/expat.py \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/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,lib/python/xmlrpc,\
+ Lib/xmlrpc/__init__.py \
+ Lib/xmlrpc/client.py \
+ Lib/xmlrpc/server.py \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,python3,lib/python/site-packages,\
+ Lib/site-packages/README \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/python3/ExternalProject_python3.mk b/python3/ExternalProject_python3.mk
new file mode 100644
index 000000000000..5ffa1a90dcd3
--- /dev/null
+++ b/python3/ExternalProject_python3.mk
@@ -0,0 +1,85 @@
+# -*- 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_unpacked,python3,python3))
+
+$(eval $(call gb_ExternalProject_use_external,python3,expat))
+
+$(eval $(call gb_ExternalProject_register_targets,python3,\
+ build \
+))
+
+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) :
+ifeq ($(VCVER),110)
+ cd $(EXTERNAL_WORKDIR)/PCbuild \
+ && MAKEFLAGS= MSBuild.exe pcbuild.sln /t:Build /p:Configuration=Release /p:PlatformToolset=v110 \
+ cd $(EXTERNAL_WORKDIR) \
+ && ln -s $(if $(filter 90,$(VCVER)),PC/VS9.0,PCbuild) LO_lib \
+ && touch $@
+else ifeq ($(VCVER),100)
+ cd $(EXTERNAL_WORKDIR)/PCbuild \
+ && MAKEFLAGS= MSBuild.exe pcbuild.sln /t:Build /p:Configuration=Release /ToolsVersion:4.0 \
+ cd $(EXTERNAL_WORKDIR) \
+ && ln -s $(if $(filter 90,$(VCVER)),PC/VS9.0,PCbuild) LO_lib \
+ && touch $@
+else ifeq ($(VCVER),90)
+ cd $(EXTERNAL_WORKDIR)/PC/VS9.0 \
+ && MAKEFLAGS= $(COMPATH)/vcpackages/vcbuild.exe pcbuild.sln "Release|$(if $(filter INTEL,$(CPUNAME)),Win32,x64)" \
+ cd $(EXTERNAL_WORKDIR) \
+ && ln -s $(if $(filter 90,$(VCVER)),PC/VS9.0,PCbuild) LO_lib \
+ && touch $@
+endif
+
+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
+
+$(call gb_ExternalProject_get_state_target,python3,build) :
+ cd $(EXTERNAL_WORKDIR) \
+ && ./configure \
+ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
+ --enable-shared \
+ --with-system-expat \
+ $(if $(strip $(VALGRIND_CFLAGS)),--with-valgrind) \
+ --prefix=/$(if $(filter MACOSX,$(OS)),@__________________________________________________OOO,python-inst) \
+ $(if $(filter AIX,$(OS)),--disable-ipv6 --with-threads CFLAGS="-g0") \
+ $(if $(filter WNT-GCC,$(OS)-$(COM)),--with-threads ac_cv_printf_zd_format=no) \
+ $(if $(filter MACOSX,$(OS)),--enable-universalsdk=$(MACOSX_SDK_PATH) --with-universal-archs=32-bit --enable-frameworks=/SomeDirThatIsNotLibraryOrSystemOrFrameworks --with-framework-name=OOoPython) \
+ CC="$(strip $(CC) \
+ $(if $(filter YES,$(SYSTEM_OPENSSL)),, -I$(OUTDIR)/inc/external) \
+ $(if $(filter YES,$(SYSTEM_EXPAT)),, -I$(OUTDIR)/inc/external/expat) \
+ $(if $(SYSBASE), -I$(SYSBASE)/usr/include) \
+ )" \
+ LDFLAGS="$(strip $(LDFLAGS) \
+ $(if $(filter YES,$(SYSTEM_OPENSSL)),, -L$(OUTDIR)/lib) \
+ $(if $(filter YES,$(SYSTEM_EXPAT)),, -L$(OUTDIR)/lib) \
+ $(if $(SYSBASE), -L$(SYSBASE)/usr/lib) \
+ $(if $(filter WNT-GCC,$(OS)-$(COM)), -shared-libgcc \
+ $(if $(filter YES,$(MINGW_SHARED_GCCLIB)),-Wl$(COMMA)--enable-runtime-pseudo-reloc-v2 -Wl$(COMMA)--export-all-symbols)) \
+ )" \
+ && MAKEFLAGS=$(if $(VERBOSE)$(verbose),,s) $(MAKE) \
+ && ln -s build/lib.* LO_lib \
+ && touch $@
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/python3/Makefile b/python3/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/python3/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/python3/Module_python3.mk b/python3/Module_python3.mk
new file mode 100644
index 000000000000..336357c0215f
--- /dev/null
+++ b/python3/Module_python3.mk
@@ -0,0 +1,25 @@
+# -*- 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_Module_Module,python3))
+
+ifneq ($(DISABLE_PYTHON),TRUE)
+ifeq ($(SYSTEM_PYTHON),NO)
+
+$(eval $(call gb_Module_add_targets,python3,\
+ UnpackedTarball_python3 \
+ ExternalProject_python3 \
+ ExternalPackage_python3 \
+ Package_python3_mk \
+))
+
+endif
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/python3/Package_python3_mk.mk b/python3/Package_python3_mk.mk
new file mode 100644
index 000000000000..adb30bf553cb
--- /dev/null
+++ b/python3/Package_python3_mk.mk
@@ -0,0 +1,15 @@
+# -*- 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_Package_Package,python3_mk,$(SRCDIR)/python3))
+
+#FIXME why deliver that?
+$(eval $(call gb_Package_add_file,python3_mk,inc/pyversion.Makefile,pyversion.Makefile))
+
+# vim: set noet sw=4 ts=4:
diff --git a/python3/README b/python3/README
new file mode 100644
index 000000000000..edde023afcda
--- /dev/null
+++ b/python3/README
@@ -0,0 +1 @@
+CPython implementation of Python 3 from http://www.python.org
diff --git a/python3/UnpackedTarball_python3.mk b/python3/UnpackedTarball_python3.mk
new file mode 100644
index 000000000000..d519d66027d1
--- /dev/null
+++ b/python3/UnpackedTarball_python3.mk
@@ -0,0 +1,36 @@
+# -*- 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_UnpackedTarball_UnpackedTarball,python3))
+
+#FIXME configure
+PYTHON3_TARBALL := b3b2524f72409d919a4137826a870a8f-Python-3.3.0.tar.bz2
+
+$(eval $(call gb_UnpackedTarball_set_tarball,python3,$(PYTHON3_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_fix_end_of_line,python3,\
+ PCbuild/pcbuild.sln \
+ PC/VS9.0/pcbuild.sln \
+ PC/VS9.0/make_versioninfo.vcproj \
+ PC/VS9.0/x64.vsprops \
+ PC/VS9.0/_ssl.vcproj \
+))
+
+$(eval $(call gb_UnpackedTarball_add_patches,python3,\
+ python3/i100492-freebsd.patch.2 \
+ python3/python-3.3.0-i42553.patch.2 \
+ python3/python-3.3.0-aix.patch.1 \
+ python3/python-3.3.0-darwin.patch.1 \
+ python3/python-3.3.0-msvc2012.patch.1 \
+ python3/python-3.3.0-msvc-disable.patch.1 \
+ python3/python-3.3.0-msvc-x64.patch.1 \
+ python3/python-3.3.0-ssl.patch.1 \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/python3/i100492-freebsd.patch.2 b/python3/i100492-freebsd.patch.2
new file mode 100644
index 000000000000..19db3db49d77
--- /dev/null
+++ b/python3/i100492-freebsd.patch.2
@@ -0,0 +1,80 @@
+FreeBSD porting fixes, patch by maho@openoffice.org
+
+--- misc/Python-2.6.1/Lib/test/test_threading.py 2008-09-30 22:41:13.000000000 +0200
++++ misc/build/Python-2.6.1/Lib/test/test_threading.py 2011-06-06 17:31:17.000000000 +0200
+@@ -382,7 +382,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')
+
+ def _run_and_join(self, script):
+--- misc/Python-2.6.1/Python/thread_pthread.h 2006-06-13 17:04:24.000000000 +0200
++++ misc/build/Python-2.6.1/Python/thread_pthread.h 2011-06-06 17:33:34.000000000 +0200
+@@ -26,6 +26,10 @@
+ #endif
+ #endif
+
++#ifdef __FreeBSD__
++#include <osreldate.h>
++#endif
++
+ /* The POSIX spec says that implementations supporting the sem_*
+ family of functions must indicate this by defining
+ _POSIX_SEMAPHORES. */
+@@ -44,7 +48,6 @@
+ in default setting. So the process scope is preferred to get
+ enough number of threads to work. */
+ #ifdef __FreeBSD__
+-#include <osreldate.h>
+ #if __FreeBSD_version >= 500000 && __FreeBSD_version < 504101
+ #undef PTHREAD_SYSTEM_SCHED_SUPPORTED
+ #endif
+@@ -149,6 +152,9 @@
+ {
+ pthread_t th;
+ int status;
++#ifdef __FreeBSD__
++ sigset_t set, oset;
++#endif
+ #if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED)
+ pthread_attr_t attrs;
+ #endif
+@@ -177,7 +183,10 @@
+ #if defined(PTHREAD_SYSTEM_SCHED_SUPPORTED)
+ pthread_attr_setscope(&attrs, PTHREAD_SCOPE_SYSTEM);
+ #endif
+-
++#ifdef __FreeBSD__
++ sigfillset(&set);
++ SET_THREAD_SIGMASK(SIG_BLOCK, &set, &oset);
++#endif
+ status = pthread_create(&th,
+ #if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED)
+ &attrs,
+@@ -188,6 +197,9 @@
+ (void *)arg
+ );
+
++#ifdef __FreeBSD__
++ SET_THREAD_SIGMASK(SIG_SETMASK, &oset, NULL);
++#endif
+ #if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED)
+ pthread_attr_destroy(&attrs);
+ #endif
+--- misc/Python-2.6.1/configure 2008-11-16 18:57:10.000000000 +0100
++++ misc/build/Python-2.6.1/configure 2011-06-06 17:31:17.000000000 +0200
+@@ -4110,11 +4110,6 @@
+ LDLIBRARY='libpython$(VERSION).so'
+ BLDLIBRARY='-L. -lpython$(VERSION)'
+ 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
+ ;;
+ hp*|HP*)
diff --git a/python3/prj/build.lst b/python3/prj/build.lst
new file mode 100644
index 000000000000..10b3314bb583
--- /dev/null
+++ b/python3/prj/build.lst
@@ -0,0 +1,2 @@
+py python3 : solenv EXPAT:expat OPENSSL:openssl NULL
+py python3\prj nmake - all py_python3 NULL
diff --git a/python3/prj/d.lst b/python3/prj/d.lst
new file mode 100644
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/python3/prj/d.lst
diff --git a/python3/python-3.3.0-aix.patch.1 b/python3/python-3.3.0-aix.patch.1
new file mode 100644
index 000000000000..151e20ed35d5
--- /dev/null
+++ b/python3/python-3.3.0-aix.patch.1
@@ -0,0 +1,159 @@
+build with GCC on AIX
+
+diff -ru python3.old_/configure python3/configure
+--- python3.old_/configure 2012-09-29 10:00:50.000000000 +0200
++++ python3/configure 2012-11-13 19:28:25.869753237 +0100
+@@ -3426,8 +3426,6 @@
+ else
+
+ case $ac_sys_system in
+- AIX*) CC=${CC:-xlc_r}
+- without_gcc=;;
+ *) without_gcc=no;;
+ esac
+ fi
+@@ -5541,10 +5539,18 @@
+ PY3LIBRARY=libpython3.so
+ fi
+ ;;
+- Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*)
++ Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*|AIX*)
+ LDLIBRARY='libpython$(LDVERSION).so'
+- BLDLIBRARY='-L. -lpython$(LDVERSION)'
+- RUNSHARED=LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}
++ case $ac_sys_system in
++ AIX*)
++ BLDLIBRARY='-Wl,-brtl -L. -lpython$(LDVERSION)'
++ RUNSHARED=LIBPATH=`pwd`:${LIBPATH}
++ ;;
++ *)
++ BLDLIBRARY='-L. -lpython$(LDVERSION)'
++ RUNSHARED=LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}
++ ;;
++ esac
+ INSTSONAME="$LDLIBRARY".$SOVERSION
+ if test "$with_pydebug" != yes
+ then
+@@ -6174,7 +6180,7 @@
+ # debug builds.
+ OPT="-g -O0 -Wall $STRICT_PROTO"
+ else
+- OPT="-g $WRAP -O3 -Wall $STRICT_PROTO"
++ OPT="$WRAP -O0 -Wall $STRICT_PROTO"
+ fi
+ ;;
+ *)
+@@ -8306,8 +8312,13 @@
+ then
+ case $ac_sys_system/$ac_sys_release in
+ AIX*)
+- BLDSHARED="\$(srcdir)/Modules/ld_so_aix \$(CC) -bI:\$(srcdir)/Modules/python.exp"
+- LDSHARED="\$(BINLIBDEST)/config/ld_so_aix \$(CC) -bI:\$(BINLIBDEST)/config/python.exp"
++ if test "$GCC" = "yes"; then
++ LDSHARED='$(CC) -shared'
++ BLDSHARED='$(CC) -Wl,-brtl -shared'
++ else
++ BLDSHARED="\$(srcdir)/Modules/ld_so_aix \$(CC) -bI:\$(srcdir)/Modules/python.exp"
++ LDSHARED="\$(BINLIBDEST)/config/ld_so_aix \$(CC) -bI:\$(BINLIBDEST)/config/python.exp"
++ fi
+ ;;
+ IRIX/5*) LDSHARED="ld -shared";;
+ IRIX*/6*) LDSHARED="ld ${SGI_ABI} -shared -all";;
+diff -ru python3.old_/configure.ac python3/configure.ac
+--- python3.old_/configure.ac 2012-09-29 10:00:50.000000000 +0200
++++ python3/configure.ac 2012-11-13 19:28:36.273753536 +0100
+@@ -545,8 +545,6 @@
+ without_gcc=$withval;;
+ esac], [
+ case $ac_sys_system in
+- AIX*) CC=${CC:-xlc_r}
+- without_gcc=;;
+ *) without_gcc=no;;
+ esac])
+ AC_MSG_RESULT($without_gcc)
+@@ -910,10 +908,18 @@
+ PY3LIBRARY=libpython3.so
+ fi
+ ;;
+- Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*)
++ Linux*|GNU*|NetBSD*|FreeBSD*|DragonFly*|OpenBSD*|AIX*)
+ LDLIBRARY='libpython$(LDVERSION).so'
+- BLDLIBRARY='-L. -lpython$(LDVERSION)'
+- RUNSHARED=LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}
++ case $ac_sys_system in
++ AIX*)
++ BLDLIBRARY='-Wl,-brtl -L. -lpython$(LDVERSION)'
++ RUNSHARED=LIBPATH=`pwd`:${LIBPATH}
++ ;;
++ *)
++ BLDLIBRARY='-L. -lpython$(LDVERSION)'
++ 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 @@
+ then
+ case $ac_sys_system/$ac_sys_release in
+ AIX*)
+- BLDSHARED="\$(srcdir)/Modules/ld_so_aix \$(CC) -bI:\$(srcdir)/Modules/python.exp"
+- LDSHARED="\$(BINLIBDEST)/config/ld_so_aix \$(CC) -bI:\$(BINLIBDEST)/config/python.exp"
++ if test "$GCC" = "yes"; then
++ LDSHARED='$(CC) -shared'
++ BLDSHARED='$(CC) -Wl,-brtl -shared'
++ else
++ BLDSHARED="\$(srcdir)/Modules/ld_so_aix \$(CC) -bI:\$(srcdir)/Modules/python.exp"
++ LDSHARED="\$(BINLIBDEST)/config/ld_so_aix \$(CC) -bI:\$(BINLIBDEST)/config/python.exp"
++ fi
+ ;;
+ IRIX/5*) LDSHARED="ld -shared";;
+ IRIX*/6*) LDSHARED="ld ${SGI_ABI} -shared -all";;
+diff -ru python3.old_/Makefile.pre.in python3/Makefile.pre.in
+--- python3.old_/Makefile.pre.in 2012-09-29 10:00:41.000000000 +0200
++++ python3/Makefile.pre.in 2012-11-13 19:10:10.733742599 +0100
+@@ -493,7 +493,10 @@
+
+ libpython$(LDVERSION).so: $(LIBRARY_OBJS)
+ if test $(INSTSONAME) != $(LDLIBRARY); then \
+- $(BLDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \
++ if [ "`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" != "aix" ]; then \
++ SONAME="-Wl,-h$(INSTSONAME)"; \
++ fi; \
++ $(BLDSHARED) $(SONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \
+ $(LN) -f $(INSTSONAME) $@; \
+ else \
+ $(BLDSHARED) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \
+@@ -1106,6 +1109,8 @@
+ export PATH; PATH="`pwd`:$$PATH"; \
+ export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \
+ export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \
++ export LD_LIBRARY_PATH; LD_LIBRARY_PATH="`pwd`${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"; \
++ export LIBPATH; LIBPATH="`pwd`${LIBPATH:+:$LIBPATH}"; \
+ export EXE; EXE="$(BUILDEXE)"; \
+ cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen
+
+diff -ru python3.old_/Modules/_ctypes/libffi/fficonfig.py.in python3/Modules/_ctypes/libffi/fficonfig.py.in
+--- python3.old_/Modules/_ctypes/libffi/fficonfig.py.in 2012-09-29 10:00:42.000000000 +0200
++++ python3/Modules/_ctypes/libffi/fficonfig.py.in 2012-11-13 19:09:25.252740861 +0100
+@@ -16,7 +16,7 @@
+ 'M32R': ['src/m32r/sysv.S', 'src/m32r/ffi.c'],
+ 'M68K': ['src/m68k/ffi.c', 'src/m68k/sysv.S'],
+ 'POWERPC': ['src/powerpc/ffi.c', 'src/powerpc/sysv.S', 'src/powerpc/ppc_closure.S', 'src/powerpc/linux64.S', 'src/powerpc/linux64_closure.S'],
+- 'POWERPC_AIX': ['src/powerpc/ffi.c', 'src/powerpc/aix.S', 'src/powerpc/aix_closure.S'],
++ 'POWERPC_AIX': ['src/powerpc/ffi_darwin.c', 'src/powerpc/aix.S', 'src/powerpc/aix_closure.S'],
+ 'POWERPC_FREEBSD': ['src/powerpc/ffi.c', 'src/powerpc/sysv.S', 'src/powerpc/ppc_closure.S'],
+ 'ARM': ['src/arm/sysv.S', 'src/arm/ffi.c'],
+ 'LIBFFI_CRIS': ['src/cris/sysv.S', 'src/cris/ffi.c'],
+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 19:09:25.251740860 +0100
+@@ -177,7 +177,7 @@
+ #_bisect _bisectmodule.c # Bisection algorithms
+ #_heapq _heapqmodule.c # Heap queue algorithm
+
+-#unicodedata unicodedata.c # static Unicode character database
++unicodedata unicodedata.c # static Unicode character database
+
+
+ # Modules with some UNIX dependencies -- on by default:
diff --git a/python3/python-3.3.0-darwin.patch.1 b/python3/python-3.3.0-darwin.patch.1
new file mode 100644
index 000000000000..7c43d8b419db
--- /dev/null
+++ b/python3/python-3.3.0-darwin.patch.1
@@ -0,0 +1,26 @@
+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"
++ # 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
++ i386)
++ UNIVERSAL_ARCH_FLAGS="-arch i386"
++ ;;
++ ppc)
++ UNIVERSAL_ARCH_FLAGS="-arch ppc"
++ ;;
++ *)
++ 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
diff --git a/python3/python-3.3.0-i42553.patch.2 b/python3/python-3.3.0-i42553.patch.2
new file mode 100644
index 000000000000..324d0712c84f
--- /dev/null
+++ b/python3/python-3.3.0-i42553.patch.2
@@ -0,0 +1,17 @@
+definition of gethostbyname conflicts with system /usr/include/unistd.h,
+available since at least Solaris 2.6 according to python-Bugs-837046
+Author: taniguchi@openoffice.org
+
+--- misc/Python-2.6.1/Include/pyport.h 2008-06-11 09:41:16.000000000 +0200
++++ misc/build/Python-2.6.1/Include/pyport.h 2011-06-06 17:31:17.000000000 +0200
+@@ -449,11 +449,6 @@
+ in platform-specific #ifdefs.
+ **************************************************************************/
+
+-#ifdef SOLARIS
+-/* Unchecked */
+-extern int gethostname(char *, int);
+-#endif
+-
+ #ifdef HAVE__GETPTY
+ #include <sys/types.h> /* we need to import mode_t */
diff --git a/python3/python-3.3.0-msvc-disable.patch.1 b/python3/python-3.3.0-msvc-disable.patch.1
new file mode 100644
index 000000000000..e9cbef594786
--- /dev/null
+++ b/python3/python-3.3.0-msvc-disable.patch.1
@@ -0,0 +1,123 @@
+Disable some stuff LO does not need, especially stuff with external dependencies
+
+diff -ru python3/PC/VS9.0/pcbuild.sln python3.new/PC/VS9.0/pcbuild.sln
+--- python3/PC/VS9.0/pcbuild.sln 2012-09-29 10:00:47.000000000 +0200
++++ python3.new/PC/VS9.0/pcbuild.sln 2012-11-12 22:34:55.365289858 +0100
+@@ -15,16 +15,6 @@
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD} = {C73F0EC1-358B-4177-940F-0846AC8B04CD}
+ EndProjectSection
+ EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythonw", "pythonw.vcproj", "{F4229CC3-873C-49AE-9729-DD308ED4CD4A}"
+- ProjectSection(ProjectDependencies) = postProject
+- {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+- EndProjectSection
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "w9xpopen", "w9xpopen.vcproj", "{E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}"
+- ProjectSection(ProjectDependencies) = postProject
+- {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}
+- EndProjectSection
+-EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_buildinfo", "make_buildinfo.vcproj", "{C73F0EC1-358B-4177-940F-0846AC8B04CD}"
+ EndProject
+ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{553EC33E-9816-4996-A660-5D6186A0B0B3}"
+@@ -68,12 +58,6 @@
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+ EndProjectSection
+ EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_sqlite3", "_sqlite3.vcproj", "{13CECB97-4119-4316-9D42-8534019A5A44}"
+- ProjectSection(ProjectDependencies) = postProject
+- {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+- {A1A295E5-463C-437F-81CA-1F32367685DA} = {A1A295E5-463C-437F-81CA-1F32367685DA}
+- EndProjectSection
+-EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ssl", "_ssl.vcproj", "{C6E20F84-3247-4AD6-B051-B073268F73BA}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}
+@@ -87,21 +71,6 @@
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+ EndProjectSection
+ EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_tkinter", "_tkinter.vcproj", "{4946ECAC-2E69-4BF8-A90A-F5136F5094DF}"
+- ProjectSection(ProjectDependencies) = postProject
+- {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+- EndProjectSection
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_bz2", "_bz2.vcproj", "{73FCD2BD-F133-46B7-8EC1-144CD82A59D5}"
+- ProjectSection(ProjectDependencies) = postProject
+- {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+- EndProjectSection
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_lzma", "_lzma.vcproj", "{F9D71780-F393-11E0-BE50-0800200C9A66}"
+- ProjectSection(ProjectDependencies) = postProject
+- {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+- EndProjectSection
+-EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "select", "select.vcproj", "{18CAE28C-B454-46C1-87A0-493D91D97F03}"
+ ProjectSection(ProjectDependencies) = postProject
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+@@ -117,20 +86,6 @@
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+ EndProjectSection
+ EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bdist_wininst", "bdist_wininst.vcproj", "{EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}"
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}"
+- ProjectSection(ProjectDependencies) = postProject
+- {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}
+- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0} = {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}
+- {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+- EndProjectSection
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}"
+- ProjectSection(ProjectDependencies) = postProject
+- {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}
+- EndProjectSection
+-EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcproj", "{9E48B300-37D1-11DD-8C41-005056C00008}"
+ ProjectSection(ProjectDependencies) = postProject
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+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 @@
+ 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}") = "_socket", "_socket.vcxproj", "{86937F53-C189-40EF-8CE8-8759D8E7D480}"
+ EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_sqlite3", "_sqlite3.vcxproj", "{13CECB97-4119-4316-9D42-8534019A5A44}"
+-EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_ssl", "_ssl.vcxproj", "{C6E20F84-3247-4AD6-B051-B073268F73BA}"
+ EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testcapi", "_testcapi.vcxproj", "{6901D91C-6E48-4BB7-9FEC-700C8131DF1D}"
+ 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}"
+-EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "select", "select.vcxproj", "{18CAE28C-B454-46C1-87A0-493D91D97F03}"
+ EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_lzma", "_lzma.vcxproj", "{F9D71780-F393-11E0-BE50-0800200C9A66}"
+-EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unicodedata", "unicodedata.vcxproj", "{ECC7CEAC-A5E5-458E-BB9E-2413CC847881}"
+ 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}"
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}"
+-EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}"
+-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}"
diff --git a/python3/python-3.3.0-msvc-x64.patch.1 b/python3/python-3.3.0-msvc-x64.patch.1
new file mode 100644
index 000000000000..b23c04d86664
--- /dev/null
+++ b/python3/python-3.3.0-msvc-x64.patch.1
@@ -0,0 +1,229 @@
+Fix Python build for x64 Windows
+
+diff -ru python3/PC/VS9.0/make_versioninfo.vcproj python3.new/PC/VS9.0/make_versioninfo.vcproj
+--- python3/PC/VS9.0/make_versioninfo.vcproj 2012-09-29 10:00:47.000000000 +0200
++++ python3.new/PC/VS9.0/make_versioninfo.vcproj 2012-11-12 22:44:03.027363013 +0100
+@@ -124,6 +124,8 @@
+ InlineFunctionExpansion="1"
+ EnableIntrinsicFunctions="true"
+ PreprocessorDefinitions="_CONSOLE"
++ RuntimeLibrary="2"
++ CompileAs="0"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -137,6 +139,8 @@
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(SolutionDir)make_versioninfo.exe"
++ ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
++ SubSystem="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+@@ -281,7 +285,8 @@
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(SolutionDir)make_versioninfo_d.exe"
+- TargetMachine="17"
++ ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
++ SubSystem="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+diff -ru python3/PC/VS9.0/pcbuild.sln python3.new/PC/VS9.0/pcbuild.sln
+--- python3/PC/VS9.0/pcbuild.sln 2012-09-29 10:00:47.000000000 +0200
++++ python3.new/PC/VS9.0/pcbuild.sln 2012-11-12 22:34:55.365289858 +0100
+@@ -182,20 +137,20 @@
+ {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|x64.Build.0 = Release|x64
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|Win32.ActiveCfg = Debug|Win32
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|Win32.Build.0 = Debug|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.ActiveCfg = Debug|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.Build.0 = Debug|Win32
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.ActiveCfg = Debug|x64
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.Build.0 = Debug|x64
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|Win32.ActiveCfg = Release|Win32
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|Win32.Build.0 = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.ActiveCfg = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.Build.0 = Release|Win32
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.ActiveCfg = Release|x64
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.Build.0 = Release|x64
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|Win32.ActiveCfg = Release|Win32
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|Win32.Build.0 = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.ActiveCfg = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.Build.0 = Release|Win32
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.ActiveCfg = Release|x64
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.Build.0 = Release|x64
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|Win32.ActiveCfg = Release|Win32
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|Win32.Build.0 = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.ActiveCfg = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.Build.0 = Release|Win32
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.ActiveCfg = Release|x64
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.Build.0 = Release|x64
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|Win32.Build.0 = Debug|Win32
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|x64.ActiveCfg = Debug|x64
+@@ -246,20 +201,20 @@
+ {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Release|x64.Build.0 = Release|x64
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|Win32.ActiveCfg = Release|Win32
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|Win32.Build.0 = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.ActiveCfg = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.Build.0 = Release|Win32
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.ActiveCfg = Release|x64
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.Build.0 = Release|x64
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|Win32.ActiveCfg = Release|Win32
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|Win32.Build.0 = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.ActiveCfg = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.Build.0 = Release|Win32
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.ActiveCfg = Release|x64
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.Build.0 = Release|x64
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|Win32.ActiveCfg = Release|Win32
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|Win32.Build.0 = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.ActiveCfg = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.Build.0 = Release|Win32
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.ActiveCfg = Release|x64
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.Build.0 = Release|x64
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|Win32.ActiveCfg = Release|Win32
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|Win32.Build.0 = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.ActiveCfg = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.Build.0 = Release|Win32
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.ActiveCfg = Release|x64
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.Build.0 = Release|x64
+ {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|Win32.ActiveCfg = Debug|Win32
+ {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|Win32.Build.0 = Debug|Win32
+ {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|x64.ActiveCfg = Debug|x64
+diff -ru python3/PC/VS9.0/x64.vsprops python3.new/PC/VS9.0/x64.vsprops
+--- python3/PC/VS9.0/x64.vsprops 2012-09-29 10:00:47.000000000 +0200
++++ python3.new/PC/VS9.0/x64.vsprops 2012-11-12 22:45:30.584374039 +0100
+@@ -3,7 +3,7 @@
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="amd64"
+- OutputDirectory="$(SolutionDir)\amd64\"
++ OutputDirectory="$(SolutionDir)"
+ IntermediateDirectory="$(SolutionDir)$(PlatformName)-temp-$(ConfigurationName)\$(ProjectName)\"
+ >
+ <Tool
+@@ -15,8 +15,4 @@
+ Name="VCLinkerTool"
+ TargetMachine="17"
+ />
+- <UserMacro
+- Name="PythonExe"
+- Value="$(HOST_PYTHON)"
+- />
+ </VisualStudioPropertySheet>
+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
+@@ -104,20 +84,20 @@
+ {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}.Release|x64.Build.0 = Release|x64
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|Win32.ActiveCfg = Debug|Win32
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|Win32.Build.0 = Debug|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.ActiveCfg = Debug|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.Build.0 = Debug|Win32
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.ActiveCfg = Debug|x64
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Debug|x64.Build.0 = Debug|x64
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|Win32.ActiveCfg = Release|Win32
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|Win32.Build.0 = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.ActiveCfg = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.Build.0 = Release|Win32
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.ActiveCfg = Release|x64
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGInstrument|x64.Build.0 = Release|x64
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|Win32.ActiveCfg = Release|Win32
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|Win32.Build.0 = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.ActiveCfg = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.Build.0 = Release|Win32
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.ActiveCfg = Release|x64
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.PGUpdate|x64.Build.0 = Release|x64
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|Win32.ActiveCfg = Release|Win32
+ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|Win32.Build.0 = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.ActiveCfg = Release|Win32
+- {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.Build.0 = Release|Win32
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.ActiveCfg = Release|x64
++ {F0E0541E-F17D-430B-97C4-93ADF0DD284E}.Release|x64.Build.0 = Release|x64
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|Win32.Build.0 = Debug|Win32
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}.Debug|x64.ActiveCfg = Debug|x64
+@@ -168,20 +148,20 @@
+ {E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}.Release|x64.Build.0 = Release|x64
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|Win32.ActiveCfg = Release|Win32
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|Win32.Build.0 = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.ActiveCfg = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.Build.0 = Release|Win32
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.ActiveCfg = Release|x64
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Debug|x64.Build.0 = Release|x64
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|Win32.ActiveCfg = Release|Win32
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|Win32.Build.0 = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.ActiveCfg = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.Build.0 = Release|Win32
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.ActiveCfg = Release|x64
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGInstrument|x64.Build.0 = Release|x64
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|Win32.ActiveCfg = Release|Win32
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|Win32.Build.0 = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.ActiveCfg = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.Build.0 = Release|Win32
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.ActiveCfg = Release|x64
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.PGUpdate|x64.Build.0 = Release|x64
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|Win32.ActiveCfg = Release|Win32
+ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|Win32.Build.0 = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.ActiveCfg = Release|Win32
+- {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.Build.0 = Release|Win32
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.ActiveCfg = Release|x64
++ {C73F0EC1-358B-4177-940F-0846AC8B04CD}.Release|x64.Build.0 = Release|x64
+ {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|Win32.ActiveCfg = Debug|Win32
+ {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|Win32.Build.0 = Debug|Win32
+ {28B5D777-DDF2-4B6B-B34F-31D938813856}.Debug|x64.ActiveCfg = Debug|x64
+@@ -577,38 +557,38 @@
+ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Debug|x64.Build.0 = Debug|x64
+ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32
+ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|Win32.Build.0 = PGInstrument|Win32
+- {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.ActiveCfg = PGInstrument|Win32
+- {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.Build.0 = PGInstrument|Win32
++ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.ActiveCfg = PGInstrument|x64
++ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGInstrument|x64.Build.0 = PGInstrument|x64
+ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32
+ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|Win32.Build.0 = PGUpdate|Win32
+- {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.ActiveCfg = PGUpdate|Win32
+- {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.Build.0 = PGUpdate|Win32
++ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.ActiveCfg = PGUpdate|x64
++ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.PGUpdate|x64.Build.0 = PGUpdate|x64
+ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|Win32.ActiveCfg = Release|Win32
+ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|Win32.Build.0 = Release|Win32
+- {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.ActiveCfg = Release|Win32
+- {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.Build.0 = Release|Win32
++ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.ActiveCfg = Release|x64
++ {7B2727B5-5A3F-40EE-A866-43A13CD31446}.Release|x64.Build.0 = Release|x64
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|Win32.ActiveCfg = Debug|Win32
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|Win32.Build.0 = Debug|Win32
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|x64.ActiveCfg = Debug|x64
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Debug|x64.Build.0 = Debug|x64
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|Win32.ActiveCfg = PGInstrument|Win32
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|Win32.Build.0 = PGInstrument|Win32
+- {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.ActiveCfg = PGInstrument|Win32
+- {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.Build.0 = PGInstrument|Win32
++ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.ActiveCfg = PGInstrument|x64
++ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGInstrument|x64.Build.0 = PGInstrument|x64
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|Win32.ActiveCfg = PGUpdate|Win32
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|Win32.Build.0 = PGUpdate|Win32
+- {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.ActiveCfg = PGUpdate|Win32
+- {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.Build.0 = PGUpdate|Win32
++ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.ActiveCfg = PGUpdate|x64
++ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.PGUpdate|x64.Build.0 = PGUpdate|x64
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|Win32.ActiveCfg = Release|Win32
+ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|Win32.Build.0 = Release|Win32
+- {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.ActiveCfg = Release|Win32
+- {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.Build.0 = Release|Win32
++ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.ActiveCfg = Release|x64
++ {1D4B18D3-7C12-4ECB-9179-8531FF876CE6}.Release|x64.Build.0 = Release|x64
+ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Debug|Win32.ActiveCfg = Debug|Win32
+ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Debug|x64.ActiveCfg = Debug|x64
+ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGInstrument|Win32.ActiveCfg = Release|Win32
+- {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGInstrument|x64.ActiveCfg = Release|Win32
++ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGInstrument|x64.ActiveCfg = Release|x64
+ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGUpdate|Win32.ActiveCfg = Release|Win32
+- {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGUpdate|x64.ActiveCfg = Release|Win32
++ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.PGUpdate|x64.ActiveCfg = Release|x64
+ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Release|Win32.ActiveCfg = Release|Win32
+ {19C0C13F-47CA-4432-AFF3-799A296A4DDC}.Release|x64.ActiveCfg = Release|x64
+ EndGlobalSection
diff --git a/python3/python-3.3.0-msvc2012.patch.1 b/python3/python-3.3.0-msvc2012.patch.1
new file mode 100644
index 000000000000..9bbfbfbaf0d6
--- /dev/null
+++ b/python3/python-3.3.0-msvc2012.patch.1
@@ -0,0 +1,72 @@
+Adapt VC10/MSVC2010 stuff for VC11/MSVC2012 (apparently builds with both then)
+
+diff -ru python3.old_/PCbuild/_msi.vcxproj python3/PCbuild/_msi.vcxproj
+--- python3.old_/PCbuild/_msi.vcxproj 2012-09-29 10:00:48.000000000 +0200
++++ python3/PCbuild/_msi.vcxproj 2012-11-13 15:52:40.656101165 +0100
+@@ -151,7 +151,7 @@
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <Link>
+- <AdditionalDependencies>fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
++ <AdditionalDependencies>cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <BaseAddress>0x1D160000</BaseAddress>
+ </Link>
+ </ItemDefinitionGroup>
+@@ -160,13 +160,13 @@
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <Link>
+- <AdditionalDependencies>fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
++ <AdditionalDependencies>cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <BaseAddress>0x1D160000</BaseAddress>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <Link>
+- <AdditionalDependencies>fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
++ <AdditionalDependencies>cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <BaseAddress>0x1D160000</BaseAddress>
+ </Link>
+ </ItemDefinitionGroup>
+@@ -175,13 +175,13 @@
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <Link>
+- <AdditionalDependencies>fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
++ <AdditionalDependencies>cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <BaseAddress>0x1D160000</BaseAddress>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'">
+ <Link>
+- <AdditionalDependencies>fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
++ <AdditionalDependencies>cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <BaseAddress>0x1D160000</BaseAddress>
+ </Link>
+ </ItemDefinitionGroup>
+@@ -190,14 +190,14 @@
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <Link>
+- <AdditionalDependencies>fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
++ <AdditionalDependencies>cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <BaseAddress>0x1D160000</BaseAddress>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'">
+ <Link>
+- <AdditionalDependencies>fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
++ <AdditionalDependencies>cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <BaseAddress>0x1D160000</BaseAddress>
+ </Link>
+ </ItemDefinitionGroup>
+@@ -206,7 +206,7 @@
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <Link>
+- <AdditionalDependencies>fci.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
++ <AdditionalDependencies>cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <BaseAddress>0x1D160000</BaseAddress>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
diff --git a/python3/python-3.3.0-ssl.patch.1 b/python3/python-3.3.0-ssl.patch.1
new file mode 100644
index 000000000000..b7ba5b5c00e0
--- /dev/null
+++ b/python3/python-3.3.0-ssl.patch.1
@@ -0,0 +1,360 @@
+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_/PC/VS9.0/pcbuild.sln python3/PC/VS9.0/pcbuild.sln
+--- python3.old_/PC/VS9.0/pcbuild.sln 2012-09-29 10:00:47.000000000 +0200
++++ python3/PC/VS9.0/pcbuild.sln 2012-11-13 14:44:29.329147866 +0100
+@@ -136,11 +136,6 @@
+ {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
+ EndProjectSection
+ EndProject
+-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl", "ssl.vcproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}"
+- ProjectSection(ProjectDependencies) = postProject
+- {B11D750F-CD1F-4A96-85CE-E69A5C5259F9} = {B11D750F-CD1F-4A96-85CE-E69A5C5259F9}
+- EndProjectSection
+-EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kill_python", "kill_python.vcproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}"
+ EndProject
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}"
+diff -ru python3.old_/PC/VS9.0/_ssl.vcproj python3/PC/VS9.0/_ssl.vcproj
+--- python3.old_/PC/VS9.0/_ssl.vcproj 2012-09-29 10:00:47.000000000 +0200
++++ python3/PC/VS9.0/_ssl.vcproj 2012-11-13 14:27:15.874169273 +0100
+@@ -42,7 +42,7 @@
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+- AdditionalIncludeDirectories="$(opensslDir)\inc32"
++ AdditionalIncludeDirectories="$(SOLARVERSION)\$(INPATH)\inc\external"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -56,7 +56,7 @@
+ />
+ <Tool
+ Name="VCLinkerTool"
+- AdditionalDependencies="ws2_32.lib $(opensslDir)\out32\libeay32.lib $(opensslDir)\out32\ssleay32.lib"
++ AdditionalDependencies="ws2_32.lib $(SOLARVER)\$(INPATH)\lib\libeay32.lib $(SOLARVER)\$(INPATH)\lib\ssleay32.lib"
+ />
+ <Tool
+ Name="VCALinkTool"
+@@ -104,7 +104,7 @@
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+- AdditionalIncludeDirectories="$(opensslDir)\inc64"
++ AdditionalIncludeDirectories="$(SOLARVERSION)\$(INPATH)\inc\external"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -118,7 +118,7 @@
+ />
+ <Tool
+ Name="VCLinkerTool"
+- AdditionalDependencies="ws2_32.lib $(opensslDir)\out64\libeay32.lib $(opensslDir)\out64\ssleay32.lib"
++ AdditionalDependencies="ws2_32.lib $(SOLARVER)\$(INPATH)\lib\libeay32.lib $(SOLARVER)\$(INPATH)\lib\ssleay32.lib"
+ />
+ <Tool
+ Name="VCALinkTool"
+@@ -166,7 +166,7 @@
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+- AdditionalIncludeDirectories="$(opensslDir)\inc32"
++ AdditionalIncludeDirectories="$(SOLARVERSION)\$(INPATH)\inc\external"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -180,7 +180,7 @@
+ />
+ <Tool
+ Name="VCLinkerTool"
+- AdditionalDependencies="ws2_32.lib $(opensslDir)\out32\libeay32.lib $(opensslDir)\out32\ssleay32.lib"
++ AdditionalDependencies="ws2_32.lib $(SOLARVER)\$(INPATH)\lib\libeay32.lib $(SOLARVER)\$(INPATH)\lib\ssleay32.lib"
+ />
+ <Tool
+ Name="VCALinkTool"
+@@ -229,7 +229,7 @@
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+- AdditionalIncludeDirectories="$(opensslDir)\inc64"
++ AdditionalIncludeDirectories="$(SOLARVERSION)\$(INPATH)\inc\external"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -243,7 +243,7 @@
+ />
+ <Tool
+ Name="VCLinkerTool"
+- AdditionalDependencies="ws2_32.lib $(opensslDir)\out64\libeay32.lib $(opensslDir)\out64\ssleay32.lib"
++ AdditionalDependencies="ws2_32.lib $(SOLARVER)\$(INPATH)\lib\libeay32.lib $(SOLARVER)\$(INPATH)\lib\ssleay32.lib"
+ />
+ <Tool
+ Name="VCALinkTool"
+@@ -291,7 +291,7 @@
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+- AdditionalIncludeDirectories="$(opensslDir)\inc32"
++ AdditionalIncludeDirectories="$(SOLARVERSION)\$(INPATH)\inc\external"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -305,7 +305,7 @@
+ />
+ <Tool
+ Name="VCLinkerTool"
+- AdditionalDependencies="ws2_32.lib $(opensslDir)\out32\libeay32.lib $(opensslDir)\out32\ssleay32.lib"
++ AdditionalDependencies="ws2_32.lib $(SOLARVER)\$(INPATH)\lib\libeay32.lib $(SOLARVER)\$(INPATH)\lib\ssleay32.lib"
+ />
+ <Tool
+ Name="VCALinkTool"
+@@ -354,7 +354,7 @@
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+- AdditionalIncludeDirectories="$(opensslDir)\inc64"
++ AdditionalIncludeDirectories="$(SOLARVERSION)\$(INPATH)\inc\external"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -368,7 +368,7 @@
+ />
+ <Tool
+ Name="VCLinkerTool"
+- AdditionalDependencies="ws2_32.lib $(opensslDir)\out64\libeay32.lib $(opensslDir)\out64\ssleay32.lib"
++ AdditionalDependencies="ws2_32.lib $(SOLARVER)\$(INPATH)\lib\libeay32.lib $(SOLARVER)\$(INPATH)\lib\ssleay32.lib"
+ TargetMachine="17"
+ />
+ <Tool
+@@ -417,7 +417,7 @@
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+- AdditionalIncludeDirectories="$(opensslDir)\inc32"
++ AdditionalIncludeDirectories="$(SOLARVERSION)\$(INPATH)\inc\external"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -431,7 +431,7 @@
+ />
+ <Tool
+ Name="VCLinkerTool"
+- AdditionalDependencies="ws2_32.lib $(opensslDir)\out32\libeay32.lib $(opensslDir)\out32\ssleay32.lib"
++ AdditionalDependencies="ws2_32.lib $(SOLARVER)\$(INPATH)\lib\libeay32.lib $(SOLARVER)\$(INPATH)\lib\ssleay32.lib"
+ />
+ <Tool
+ Name="VCALinkTool"
+@@ -480,7 +480,7 @@
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+- AdditionalIncludeDirectories="$(opensslDir)\inc64"
++ AdditionalIncludeDirectories="$(SOLARVERSION)\$(INPATH)\inc\external"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+@@ -494,7 +494,7 @@
+ />
+ <Tool
+ Name="VCLinkerTool"
+- AdditionalDependencies="ws2_32.lib $(opensslDir)\out64\libeay32.lib $(opensslDir)\out64\ssleay32.lib"
++ AdditionalDependencies="ws2_32.lib $(SOLARVER)\$(INPATH)\lib\libeay32.lib $(SOLARVER)\$(INPATH)\lib\ssleay32.lib"
+ TargetMachine="17"
+ />
+ <Tool
+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 @@
+ 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}"
+-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 @@
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+- <AdditionalIncludeDirectories>$(opensslDir)\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
++ <AdditionalIncludeDirectories>$(SOLARVERSION)\$(INPATH)\inc\external;%(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;$(SOLARVER)\$(INPATH)\lib\libeay32.lib;$(SOLARVER)\$(INPATH)\lib\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>$(SOLARVERSION)\$(INPATH)\inc\external;%(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;$(SOLARVER)\$(INPATH)\lib\libeay32.lib;$(SOLARVER)\$(INPATH)\lib\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+- <AdditionalIncludeDirectories>$(opensslDir)\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
++ <AdditionalIncludeDirectories>$(SOLARVERSION)\$(INPATH)\inc\external;%(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;$(SOLARVER)\$(INPATH)\lib\libeay32.lib;$(SOLARVER)\$(INPATH)\lib\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>$(SOLARVERSION)\$(INPATH)\inc\external;%(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;$(SOLARVER)\$(INPATH)\lib\libeay32.lib;$(SOLARVER)\$(INPATH)\lib\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='PGInstrument|Win32'">
+ <ClCompile>
+- <AdditionalIncludeDirectories>$(opensslDir)\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
++ <AdditionalIncludeDirectories>$(SOLARVERSION)\$(INPATH)\inc\external;%(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;$(SOLARVER)\$(INPATH)\lib\libeay32.lib;$(SOLARVER)\$(INPATH)\lib\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>$(SOLARVERSION)\$(INPATH)\inc\external;%(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;$(SOLARVER)\$(INPATH)\lib\libeay32.lib;$(SOLARVER)\$(INPATH)\lib\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|Win32'">
+ <ClCompile>
+- <AdditionalIncludeDirectories>$(opensslDir)\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
++ <AdditionalIncludeDirectories>$(SOLARVERSION)\$(INPATH)\inc\external;%(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;$(SOLARVER)\$(INPATH)\lib\libeay32.lib;$(SOLARVER)\$(INPATH)\lib\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='PGUpdate|x64'">
+@@ -248,14 +248,14 @@
+ <TargetEnvironment>X64</TargetEnvironment>
+ </Midl>
+ <ClCompile>
+- <AdditionalIncludeDirectories>$(opensslDir)\inc64;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
++ <AdditionalIncludeDirectories>$(SOLARVERSION)\$(INPATH)\inc\external;%(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;$(SOLARVER)\$(INPATH)\lib\libeay32.lib;$(SOLARVER)\$(INPATH)\lib\ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+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,12 @@
+ exts.append( Extension('_socket', ['socketmodule.c'],
+ depends = ['socketmodule.h']) )
+ # Detect SSL support for the socket module (via _ssl)
++ ooosslinc = os.environ.get('SOLARVERSION') + '/' + \
++ os.environ.get('INPATH') + '/' + \
++ 'inc'
++ ooosslinc = ooosslinc + '/external/'
+ search_for_ssl_incs_in = [
++ ooosslinc,
+ '/usr/local/ssl/include',
+ '/usr/contrib/ssl/include/'
+ ]
+@@ -769,8 +774,13 @@
+ ['/usr/kerberos/include'])
+ if krb5_h:
+ ssl_incs += krb5_h
++ ooossllib = os.environ.get('SOLARVER') + '/' + \
++ os.environ.get('INPATH') + '/' + \
++ 'lib'
++ ooosslinc = ooosslinc + '/'
+ ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs,
+- ['/usr/local/ssl/lib',
++ [ooossllib,
++ '/usr/local/ssl/lib',
+ '/usr/contrib/ssl/lib/'
+ ] )
+
diff --git a/python3/pyversion.Makefile b/python3/pyversion.Makefile
new file mode 100644
index 000000000000..edcffd1da582
--- /dev/null
+++ b/python3/pyversion.Makefile
@@ -0,0 +1,22 @@
+#FIXME move that to configure
+
+# when you want to change the python version, you must update the d.lst
+# in the python project accordingly !!!
+PYMAJOR:=3
+PYMINOR:=3
+PYMICRO:=0
+PYVERSION:=$(PYMAJOR).$(PYMINOR).$(PYMICRO)
+
+ifeq ($(GUI),UNX)
+ifeq ($(OS),MACOSX)
+PY_FULL_DLL_NAME:=libpython$(PYMAJOR).$(PYMINOR).a
+else
+PY_FULL_DLL_NAME:=libpython$(PYMAJOR).$(PYMINOR)m.so
+endif
+else
+ifeq ($(COM),GCC)
+PY_FULL_DLL_NAME:=libpython$(PYMAJOR).$(PYMINOR).dll
+else
+PY_FULL_DLL_NAME:=python$(PYMAJOR)$(PYMINOR).dll
+endif
+endif