diff options
author | Khaled Hosny <khaledhosny@eglug.org> | 2013-11-03 20:28:42 +0200 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2013-11-04 02:40:45 -0600 |
commit | 9dc3f0f5af0fe64ced5d1aca2fc1ddf28c3974c9 (patch) | |
tree | 9dd3583b360f02747470d68b4f4de644ab73a4d4 /external/python3 | |
parent | 45053900a4b05018359bfc135ebe0b2c6ab93f4f (diff) |
fdo#70393: move python3 to a subdir of external
Change-Id: Ic5796f096255d2d84e39415324e8a2e06bcf09c9
Reviewed-on: https://gerrit.libreoffice.org/6550
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
Diffstat (limited to 'external/python3')
22 files changed, 2469 insertions, 0 deletions
diff --git a/external/python3/ExternalPackage_python3.mk b/external/python3/ExternalPackage_python3.mk new file mode 100644 index 000000000000..ac8e856d9ad0 --- /dev/null +++ b/external/python3/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,LO_lib/$(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,LO_lib/$(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,LO_lib/$(python_arch_subdir)python$(PYTHON_VERSION_MAJOR).dll)) +endif +$(eval $(call gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib,\ + LO_lib/$(python_arch_subdir)_ctypes$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_ctypes_test$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_decimal$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_elementtree$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_msi$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_multiprocessing$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_socket$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_ssl$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_testbuffer$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)_testcapi$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)pyexpat$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)select$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(python_arch_subdir)unicodedata$(if $(MSVC_USE_DEBUG_RUNTIME),_d).pyd \ + LO_lib/$(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) + +# 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 \ +)) + +# that one is generated... +ifneq ($(OS)-$(COM),WNT-MSC) +$(eval $(call gb_ExternalPackage_add_files,python3,$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib,\ + Lib/_sysconfigdata.py \ +)) +endif + +$(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/python3/ExternalProject_python3.mk b/external/python3/ExternalProject_python3.mk new file mode 100644 index 000000000000..70063f0f52eb --- /dev/null +++ b/external/python3/ExternalProject_python3.mk @@ -0,0 +1,142 @@ +# -*- 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 100,$(VCVER)), \ + /ToolsVersion:4.0, \ + /p:PlatformToolset=v110 /p:VisualStudioVersion=11.0) \ + && cd $(EXTERNAL_WORKDIR) \ + && ln -s PCbuild LO_lib \ + ,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 $(filter YES,$(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 POWERPC,$(CPUNAME)),--enable-universalsdk=$(MACOSX_SDK_PATH) --with-universal-archs=32-bit) --enable-framework=/@__________________________________________________OOO --with-framework-name=LibreOfficePython, \ + --enable-shared \ + ) \ + CC="$(strip $(CC) \ + $(if $(filter NO,$(SYSTEM_OPENSSL)),-I$(call gb_UnpackedTarball_get_dir,openssl)/include \ + $(if $(DISABLE_OPENSSL),,-I$(call gb_UnpackedTarball_get_dir,openssl)/include)) \ + $(if $(filter NO,$(SYSTEM_EXPAT)),-I$(call gb_UnpackedTarball_get_dir,expat)/lib) \ + $(if $(SYSBASE), -I$(SYSBASE)/usr/include) \ + )" \ + $(if $(python3_cflags),CFLAGS='$(python3_cflags)') \ + LDFLAGS="$(strip $(LDFLAGS) \ + $(if $(filter YES,$(SYSTEM_OPENSSL)),, -L$(call gb_UnpackedTarball_get_dir,openssl)) \ + $(if $(filter YES,$(SYSTEM_EXPAT)),, -L$(gb_StaticLibrary_WORKDIR)) \ + $(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= $(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" && 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 \ + @executable_path/../../../../LibreOfficePython \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/Resources/Python.app/Contents/MacOS/LibreOfficePython + touch $@ + +# also delete binaries that are symlinked in scp2 +$(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 \ + $(INSTALL_NAME_TOOL) -change \ + $(python3_fw_prefix)/Versions/$(PYTHON_VERSION_MAJOR).$(PYTHON_VERSION_MINOR)/LibreOfficePython \ + @executable_path/../LibreOfficePython $$file ; done + touch $@ + +endif + +# vim: set noet sw=4 ts=4: diff --git a/external/python3/GeneratedPackage_python3.mk b/external/python3/GeneratedPackage_python3.mk new file mode 100644 index 000000000000..8ca47a919b7d --- /dev/null +++ b/external/python3/GeneratedPackage_python3.mk @@ -0,0 +1,18 @@ +# -*- 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_GeneratedPackage_GeneratedPackage,python3,$(call gb_UnpackedTarball_get_dir,python3)/python-inst/@__________________________________________________OOO)) + +$(eval $(call gb_GeneratedPackage_use_unpacked,python3,python3)) + +$(eval $(call gb_GeneratedPackage_use_external_project,python3,python3)) + +$(eval $(call gb_GeneratedPackage_add_dir,python3,$(INSTROOT)/$(if $(ENABLE_MACOSX_MACLIKE_APP_STRUCTURE),Frameworks,$(LIBO_BIN_FOLDER))/LibreOfficePython.framework,LibreOfficePython.framework)) + +# vim: set noet sw=4 ts=4: diff --git a/external/python3/Makefile b/external/python3/Makefile new file mode 100644 index 000000000000..e4968cf85fb6 --- /dev/null +++ b/external/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/external/python3/Module_python3.mk b/external/python3/Module_python3.mk new file mode 100644 index 000000000000..eb2ec39ecb0b --- /dev/null +++ b/external/python3/Module_python3.mk @@ -0,0 +1,24 @@ +# -*- 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 \ + $(if $(filter MACOSX,$(OS)),GeneratedPackage_python3,ExternalPackage_python3) \ +)) + +endif +endif + +# vim: set noet sw=4 ts=4: diff --git a/external/python3/README b/external/python3/README new file mode 100644 index 000000000000..edde023afcda --- /dev/null +++ b/external/python3/README @@ -0,0 +1 @@ +CPython implementation of Python 3 from http://www.python.org diff --git a/external/python3/UnpackedTarball_python3.mk b/external/python3/UnpackedTarball_python3.mk new file mode 100644 index 000000000000..62cc55e09e32 --- /dev/null +++ b/external/python3/UnpackedTarball_python3.mk @@ -0,0 +1,50 @@ +# -*- 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)) + +$(eval $(call gb_UnpackedTarball_set_tarball,python3,$(PYTHON_TARBALL),,python3)) + +$(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,\ + external/python3/i100492-freebsd.patch.1 \ + external/python3/python-3.3.0-i42553.patch.2 \ + external/python3/python-3.3.0-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-implicit-int.patch.1 \ + external/python3/python-3.3.0-ffi-clang.patch.1 \ + external/python3/python-3.3.0-gcc-4.8.patch.1 \ + external/python3/python-3.3.0-pythreadstate.patch.1 \ + external/python3/python-3.3.0-clang.patch.1 \ +)) + +ifneq ($(OS),WNT) +$(eval $(call gb_UnpackedTarball_add_patches,python3,\ + external/python3/python-3.3.0-15833.patch.1 \ +)) +endif + +ifneq ($(filter DRAGONFLY FREEBSD LINUX NETBSD OPENBSD SOLARIS,$(OS)),) +$(eval $(call gb_UnpackedTarball_add_patches,python3,\ + external/python3/python-3.3.0-elf-rpath.patch.1 \ +)) +endif + +# vim: set noet sw=4 ts=4: diff --git a/external/python3/i100492-freebsd.patch.1 b/external/python3/i100492-freebsd.patch.1 new file mode 100644 index 000000000000..d797ac14f826 --- /dev/null +++ b/external/python3/i100492-freebsd.patch.1 @@ -0,0 +1,80 @@ +FreeBSD porting fixes, patch by maho@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') + + def _run_and_join(self, script): +--- 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 @@ + #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. */ +@@ -60,7 +64,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 +@@ -186,6 +189,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 +@@ -214,7 +220,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, +@@ -225,6 +234,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 diff --git a/external/python3/python-3.3.0-15833.patch.1 b/external/python3/python-3.3.0-15833.patch.1 new file mode 100644 index 000000000000..7cb845f07312 --- /dev/null +++ b/external/python3/python-3.3.0-15833.patch.1 @@ -0,0 +1,28 @@ +iff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py +--- a/Lib/importlib/_bootstrap.py ++++ b/Lib/importlib/_bootstrap.py +@@ -1066,17 +1066,17 @@ class SourceFileLoader(FileLoader, Sourc + except FileExistsError: + # Probably another Python process already created the dir. + continue +- except PermissionError: +- # If can't get proper access, then just forget about writing +- # the data. ++ except OSError as exc: ++ # Could be a permission error, read-only filesystem: just forget ++ # about writing the data. ++ _verbose_message('could not create {!r}: {!r}', parent, exc) + return + try: + _write_atomic(path, data, _mode) + _verbose_message('created {!r}', path) +- except (PermissionError, FileExistsError): +- # Don't worry if you can't write bytecode or someone is writing +- # it at the same time. +- pass ++ except OSError as exc: ++ # Same as above: just don't write the bytecode. ++ _verbose_message('could not create {!r}: {!r}', path, exc) + + + class SourcelessFileLoader(FileLoader, _LoaderBasics): diff --git a/external/python3/python-3.3.0-aix.patch.1 b/external/python3/python-3.3.0-aix.patch.1 new file mode 100644 index 000000000000..f8dceb2a4c1f --- /dev/null +++ b/external/python3/python-3.3.0-aix.patch.1 @@ -0,0 +1,156 @@ +build with GCC on AIX + +--- Python-3.3.0/configure 2012-11-28 09:05:45.990529603 +0000 ++++ Python-3.3.0/configure 2012-11-28 09:06:23.037963934 +0000 +@@ -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 +@@ -8301,8 +8307,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";; +--- Python-3.3.0/configure.ac 2012-11-28 09:05:45.990529603 +0000 ++++ Python-3.3.0/configure.ac 2012-11-28 09:06:23.038963946 +0000 +@@ -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";; +--- Python-3.3.0/Makefile.pre.in 2012-11-28 09:05:45.861528086 +0000 ++++ Python-3.3.0/Makefile.pre.in 2012-11-28 09:06:23.046964040 +0000 +@@ -493,14 +493,20 @@ + + 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); \ + fi + + libpython3.so: libpython$(LDVERSION).so +- $(BLDSHARED) $(NO_AS_NEEDED) -o $@ -Wl,-h$@ $^ ++ if [ "`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" != "aix" ]; then \ ++ SONAME="-Wl,-h$@"; \ ++ fi; \ ++ $(BLDSHARED) $(NO_AS_NEEDED) -o $@ $(SONAME) $^ + + libpython$(LDVERSION).dylib: $(LIBRARY_OBJS) + $(CC) -dynamiclib -Wl,-single_module $(PY_LDFLAGS) -undefined dynamic_lookup -Wl,-install_name,$(prefix)/lib/libpython$(LDVERSION).dylib -Wl,-compatibility_version,$(VERSION) -Wl,-current_version,$(VERSION) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ +@@ -1106,6 +1112,8 @@ + export PATH; PATH="`pwd`:$$PATH"; \ + export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \ + export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \ ++ export LD_LIBRARY_PATH; LD_LIBRARY_PATH="`pwd`${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"; \ ++ export LIBPATH; LIBPATH="`pwd`${LIBPATH:+:$LIBPATH}"; \ + export EXE; EXE="$(BUILDEXE)"; \ + cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen + +--- Python-3.3.0/Modules/_ctypes/libffi/fficonfig.py.in 2012-11-28 09:05:45.889528418 +0000 ++++ Python-3.3.0/Modules/_ctypes/libffi/fficonfig.py.in 2012-11-28 09:06:23.046964040 +0000 +@@ -16,7 +16,7 @@ + 'M32R': ['src/m32r/sysv.S', 'src/m32r/ffi.c'], + 'M68K': ['src/m68k/ffi.c', 'src/m68k/sysv.S'], + 'POWERPC': ['src/powerpc/ffi.c', 'src/powerpc/sysv.S', 'src/powerpc/ppc_closure.S', 'src/powerpc/linux64.S', 'src/powerpc/linux64_closure.S'], +- 'POWERPC_AIX': ['src/powerpc/ffi.c', 'src/powerpc/aix.S', 'src/powerpc/aix_closure.S'], ++ 'POWERPC_AIX': ['src/powerpc/ffi_darwin.c', 'src/powerpc/aix.S', 'src/powerpc/aix_closure.S'], + 'POWERPC_FREEBSD': ['src/powerpc/ffi.c', 'src/powerpc/sysv.S', 'src/powerpc/ppc_closure.S'], + 'ARM': ['src/arm/sysv.S', 'src/arm/ffi.c'], + 'LIBFFI_CRIS': ['src/cris/sysv.S', 'src/cris/ffi.c'], +--- Python-3.3.0/Modules/Setup.dist 2012-11-28 09:05:45.935528957 +0000 ++++ Python-3.3.0/Modules/Setup.dist 2012-11-28 09:06:23.052964111 +0000 +@@ -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/external/python3/python-3.3.0-clang.patch.1 b/external/python3/python-3.3.0-clang.patch.1 new file mode 100644 index 000000000000..9001110fbed4 --- /dev/null +++ b/external/python3/python-3.3.0-clang.patch.1 @@ -0,0 +1,13 @@ +-*- Mode: diff -*- + +--- python3/setup.py ++++ python3/setup.py +@@ -436,7 +436,7 @@ + if ret >> 8 == 0: + with open(tmpfile) as fp: + for line in fp.readlines(): +- if line.startswith("gcc version"): ++ if line.startswith("gcc version") or line.startswith("clang -cc1 version"): + is_gcc = True + elif line.startswith("#include <...>"): + in_incdirs = True diff --git a/external/python3/python-3.3.0-darwin.patch.1 b/external/python3/python-3.3.0-darwin.patch.1 new file mode 100644 index 000000000000..a32b7f588b01 --- /dev/null +++ b/external/python3/python-3.3.0-darwin.patch.1 @@ -0,0 +1,63 @@ +-*- Mode: diff -*- + +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 + +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 @@ + INSTALL_SCRIPT= @INSTALL_SCRIPT@ + INSTALL_DATA=@INSTALL_DATA@ + LN=@LN@ +-STRIPFLAG=-s ++STRIPFLAG= + CPMAC=CpMac + + APPTEMPLATE=$(srcdir)/Resources/app diff --git a/external/python3/python-3.3.0-elf-rpath.patch.1 b/external/python3/python-3.3.0-elf-rpath.patch.1 new file mode 100644 index 000000000000..0007d6b2e71e --- /dev/null +++ b/external/python3/python-3.3.0-elf-rpath.patch.1 @@ -0,0 +1,13 @@ +set RPATH (only to be used on ELF platforms) + +--- python3/Makefile.pre.in 2013-04-19 15:08:43.637715422 +0200 ++++ python3/Makefile.pre.in 2013-04-19 15:07:32.685711138 +0200 +@@ -464,7 +464,7 @@ + + # Build the interpreter + $(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) +- $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) ++ $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) -Wl,-rpath,\$$ORIGIN + + platform: $(BUILDPYTHON) $(SYSCONFIGDATA) + $(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.0-ffi-clang.patch.1 b/external/python3/python-3.3.0-ffi-clang.patch.1 new file mode 100644 index 000000000000..0dcbc42d13a4 --- /dev/null +++ b/external/python3/python-3.3.0-ffi-clang.patch.1 @@ -0,0 +1,40 @@ +fix clang build problem: + +python3/Modules/_ctypes/libffi/src/x86/sysv.S:389:17: error: invalid variant ´rel´ +Patch by: Rafael Avila de Espindola <respindola at mozilla dot com> +https://417179.bugs.gentoo.org/attachment.cgi?id=313299 + +diff -ru python3.old/Modules/_ctypes/libffi/configure.ac python3/Modules/_ctypes/libffi/configure.ac +--- python3.old/Modules/_ctypes/libffi/configure.ac 2012-09-29 10:00:42.000000000 +0200 ++++ python3/Modules/_ctypes/libffi/configure.ac 2012-11-27 16:12:44.421564130 +0100 +@@ -303,10 +303,10 @@ + if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64; then + AC_CACHE_CHECK([assembler supports pc related relocs], + libffi_cv_as_x86_pcrel, [ +- libffi_cv_as_x86_pcrel=yes ++ libffi_cv_as_x86_pcrel=no + echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s +- if $CC $CFLAGS -c conftest.s 2>&1 | $EGREP -i 'illegal|warning' > /dev/null; then +- libffi_cv_as_x86_pcrel=no ++ if $CC $CFLAGS -c conftest.s > /dev/null; then ++ libffi_cv_as_x86_pcrel=yes + fi + ]) + if test "x$libffi_cv_as_x86_pcrel" = xyes; then +diff -ru python3.old/Modules/_ctypes/libffi/configure python3/Modules/_ctypes/libffi/configure +--- python3.old/Modules/_ctypes/libffi/configure 2012-09-29 10:00:42.000000000 +0200 ++++ python3/Modules/_ctypes/libffi/configure 2012-11-27 16:12:44.420564130 +0100 +@@ -14322,10 +14322,10 @@ + $as_echo_n "(cached) " >&6 + else + +- libffi_cv_as_x86_pcrel=yes ++ libffi_cv_as_x86_pcrel=no + echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s +- if $CC $CFLAGS -c conftest.s 2>&1 | $EGREP -i 'illegal|warning' > /dev/null; then +- libffi_cv_as_x86_pcrel=no ++ if $CC $CFLAGS -c conftest.s > /dev/null; then ++ libffi_cv_as_x86_pcrel=yes + fi + + fi diff --git a/external/python3/python-3.3.0-gcc-4.8.patch.1 b/external/python3/python-3.3.0-gcc-4.8.patch.1 new file mode 100644 index 000000000000..8fb7107ff299 --- /dev/null +++ b/external/python3/python-3.3.0-gcc-4.8.patch.1 @@ -0,0 +1,15 @@ +--- Python-3.3.0/Include/modsupport.h 2012-09-29 10:00:26.000000000 +0200 ++++ Python-3.3.0/Include/modsupport.h 2013-03-08 10:46:28.671938738 +0100 +@@ -26,7 +26,11 @@ + /* Due to a glitch in 3.2, the _SizeT versions weren't exported from the DLL. */ + #if !defined(PY_SSIZE_T_CLEAN) || !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 + PyAPI_FUNC(int) PyArg_Parse(PyObject *, const char *, ...); +-PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...) Py_FORMAT_PARSETUPLE(PyArg_ParseTuple, 2, 3); ++PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...) ++#ifdef PY_SSIZE_T_CLEAN ++ Py_FORMAT_PARSETUPLE(PyArg_ParseTuple, 2, 3) ++#endif ++ ; + PyAPI_FUNC(int) PyArg_ParseTupleAndKeywords(PyObject *, PyObject *, + const char *, char **, ...); + PyAPI_FUNC(int) PyArg_ValidateKeywordArguments(PyObject *); diff --git a/external/python3/python-3.3.0-i42553.patch.2 b/external/python3/python-3.3.0-i42553.patch.2 new file mode 100644 index 000000000000..21145227cc1e --- /dev/null +++ b/external/python3/python-3.3.0-i42553.patch.2 @@ -0,0 +1,18 @@ +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 */ + extern char * _getpty(int *, int, mode_t, int); diff --git a/external/python3/python-3.3.0-implicit-int.patch.1 b/external/python3/python-3.3.0-implicit-int.patch.1 new file mode 100644 index 000000000000..6e4d2b05127d --- /dev/null +++ b/external/python3/python-3.3.0-implicit-int.patch.1 @@ -0,0 +1,30 @@ +fix function names in import.h + +MSVC complains about some declarations in Include/import.h. +Apparently the problem is a missing space between PyAPI_FUNC(int) and the +function name, leading to concatenated int_PyImport... names and no +return type. + +diff -ru python3.old/Include/import.h python3/Include/import.h +--- python3.old/Include/import.h 2012-09-29 10:00:26.000000000 +0200 ++++ python3/Include/import.h 2012-11-27 16:09:26.449390966 +0100 +@@ -86,15 +86,15 @@ + + PyAPI_FUNC(void) _PyImport_ReInitLock(void); + +-PyAPI_FUNC(PyObject *)_PyImport_FindBuiltin( ++PyAPI_FUNC(PyObject *) _PyImport_FindBuiltin( + const char *name /* UTF-8 encoded string */ + ); +-PyAPI_FUNC(PyObject *)_PyImport_FindExtensionObject(PyObject *, PyObject *); +-PyAPI_FUNC(int)_PyImport_FixupBuiltin( ++PyAPI_FUNC(PyObject *) _PyImport_FindExtensionObject(PyObject *, PyObject *); ++PyAPI_FUNC(int) _PyImport_FixupBuiltin( + PyObject *mod, + char *name /* UTF-8 encoded string */ + ); +-PyAPI_FUNC(int)_PyImport_FixupExtensionObject(PyObject*, PyObject *, PyObject *); ++PyAPI_FUNC(int) _PyImport_FixupExtensionObject(PyObject*, PyObject *, PyObject *); + + struct _inittab { + char *name; /* ASCII encoded string */ diff --git a/external/python3/python-3.3.0-msvc-disable.patch.1 b/external/python3/python-3.3.0-msvc-disable.patch.1 new file mode 100644 index 000000000000..e9cbef594786 --- /dev/null +++ b/external/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/external/python3/python-3.3.0-msvc-x64.patch.1 b/external/python3/python-3.3.0-msvc-x64.patch.1 new file mode 100644 index 000000000000..7071573c04ac --- /dev/null +++ b/external/python3/python-3.3.0-msvc-x64.patch.1 @@ -0,0 +1,362 @@ +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 +--- python3/PCbuild/make_buildinfo.vcxproj ++++ python3/PCbuild/make_buildinfo.vcxproj +@@ -5,6 +5,10 @@ + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> ++ <ProjectConfiguration Include="Release|x64"> ++ <Configuration>Release</Configuration> ++ <Platform>x64</Platform> ++ </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectGuid>{C73F0EC1-358B-4177-940F-0846AC8B04CD}</ProjectGuid> +@@ -16,6 +20,10 @@ + <ConfigurationType>Application</ConfigurationType> + <CharacterSet>NotSet</CharacterSet> + </PropertyGroup> ++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> ++ <ConfigurationType>Application</ConfigurationType> ++ <CharacterSet>NotSet</CharacterSet> ++ </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> +@@ -24,17 +32,38 @@ + <Import Project="pyproject.props" /> + <Import Project="release.props" /> + </ImportGroup> ++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> ++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> ++ <Import Project="pyproject.props" /> ++ <Import Project="x64.props" /> ++ <Import Project="release.props" /> ++ </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup> + <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion> + <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet> + <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> + <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> ++ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet> ++ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> ++ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <ClCompile> + <Optimization>Disabled</Optimization> + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> ++ <PreprocessorDefinitions>_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> ++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary> ++ </ClCompile> ++ <Link> ++ <OutputFile>$(OutDir)make_buildinfo.exe</OutputFile> ++ <SubSystem>Console</SubSystem> ++ </Link> ++ </ItemDefinitionGroup> ++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> ++ <ClCompile> ++ <Optimization>Disabled</Optimization> ++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> + <PreprocessorDefinitions>_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreaded</RuntimeLibrary> + </ClCompile> +--- python3/PCbuild/make_versioninfo.vcxproj ++++ python3/PCbuild/make_versioninfo.vcxproj +@@ -114,24 +114,25 @@ + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <CustomBuildStep> + <Message>Build PC/pythonnt_rc(_d).h</Message> + <Command>cd $(SolutionDir) +-make_versioninfo.exe > ..\PC\pythonnt_rc.h ++amd64\make_versioninfo.exe > ..\PC\pythonnt_rc.h + </Command> + <Outputs>$(SolutionDir)..\PC\pythonnt_rc.h;%(Outputs)</Outputs> + </CustomBuildStep> + <ClCompile> + <Optimization>MaxSpeed</Optimization> + <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <Link> +- <OutputFile>$(SolutionDir)make_versioninfo.exe</OutputFile> ++ <OutputFile>$(SolutionDir)amd64\make_versioninfo.exe</OutputFile> ++ <SubSystem>Console</SubSystem> + </Link> + <PostBuildEvent> + <Command>cd $(SolutionDir) +-make_versioninfo.exe > ..\PC\python_nt.h ++amd64\make_versioninfo.exe > ..\PC\python_nt.h + </Command> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> +--- python3/PCbuild/pythoncore.vcxproj ++++ python3/PCbuild/pythoncore.vcxproj +@@ -185,35 +185,35 @@ + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <Midl> + <TargetEnvironment>X64</TargetEnvironment> + </Midl> + <ClCompile> + <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions> + <AdditionalIncludeDirectories>..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <PreprocessorDefinitions>_USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + </ClCompile> + <ResourceCompile> + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <Culture>0x0409</Culture> + <AdditionalIncludeDirectories>..\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ResourceCompile> + <PreLinkEvent> + <Message>Generate build information...</Message> +- <Command>"$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)"</Command> ++ <Command>"$(SolutionDir)amd64\make_buildinfo.exe" Release "$(IntDir)"</Command> + </PreLinkEvent> + <Link> + <AdditionalDependencies>$(IntDir)getbuildinfo.o;%(AdditionalDependencies)</AdditionalDependencies> + <IgnoreSpecificDefaultLibraries>libc;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries> + <BaseAddress>0x1e000000</BaseAddress> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions> + <Optimization>Disabled</Optimization> + <InlineFunctionExpansion>Default</InlineFunctionExpansion> + <IntrinsicFunctions>false</IntrinsicFunctions> + <AdditionalIncludeDirectories>..\Python;..\Modules\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <PreprocessorDefinitions>_USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + </ClCompile> diff --git a/external/python3/python-3.3.0-msvc2012.patch.1 b/external/python3/python-3.3.0-msvc2012.patch.1 new file mode 100644 index 000000000000..9bbfbfbaf0d6 --- /dev/null +++ b/external/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/external/python3/python-3.3.0-pythreadstate.patch.1 b/external/python3/python-3.3.0-pythreadstate.patch.1 new file mode 100644 index 000000000000..66350e2c8112 --- /dev/null +++ b/external/python3/python-3.3.0-pythreadstate.patch.1 @@ -0,0 +1,15 @@ +disable a check in PyThreadState_Swap that is hopefully not a "real" problem + +--- python3/Python/pystate.c 2013-04-17 22:45:00.799800000 +0200 ++++ python3/Python/pystate.c 2013-04-17 22:46:53.743800000 +0200 +@@ -437,7 +437,9 @@ + to be used for a thread. Check this the best we can in debug + builds. + */ +-#if defined(Py_DEBUG) && defined(WITH_THREAD) ++#if defined(Py_DEBUG) && defined(WITH_THREAD) && 0 ++ /* disable this for LO - it is triggered by nested PyThreadAttach ++ which do not appear to be a real problem */ + if (newts) { + /* This can be called from PyEval_RestoreThread(). Similar + to it, we need to ensure errno doesn't change. diff --git a/external/python3/python-3.3.0-ssl.patch.1 b/external/python3/python-3.3.0-ssl.patch.1 new file mode 100644 index 000000000000..d5777dfc3252 --- /dev/null +++ b/external/python3/python-3.3.0-ssl.patch.1 @@ -0,0 +1,370 @@ +-*- Mode: diff -*- + +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="$(WORKDIR)/UnpackedTarball/openssl/include" + /> + <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 $(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib $(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib" + /> + <Tool + Name="VCALinkTool" +@@ -104,7 +104,7 @@ + /> + <Tool + Name="VCCLCompilerTool" +- AdditionalIncludeDirectories="$(opensslDir)\inc64" ++ AdditionalIncludeDirectories="$(WORKDIR)/UnpackedTarball/openssl/include" + /> + <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 $(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib $(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib" + /> + <Tool + Name="VCALinkTool" +@@ -166,7 +166,7 @@ + /> + <Tool + Name="VCCLCompilerTool" +- AdditionalIncludeDirectories="$(opensslDir)\inc32" ++ AdditionalIncludeDirectories="$(WORKDIR)/UnpackedTarball/openssl/include" + /> + <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 $(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib $(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib" + /> + <Tool + Name="VCALinkTool" +@@ -229,7 +229,7 @@ + /> + <Tool + Name="VCCLCompilerTool" +- AdditionalIncludeDirectories="$(opensslDir)\inc64" ++ AdditionalIncludeDirectories="$(WORKDIR)/UnpackedTarball/openssl/include" + /> + <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 $(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib $(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib" + /> + <Tool + Name="VCALinkTool" +@@ -291,7 +291,7 @@ + /> + <Tool + Name="VCCLCompilerTool" +- AdditionalIncludeDirectories="$(opensslDir)\inc32" ++ AdditionalIncludeDirectories="$(WORKDIR)/UnpackedTarball/openssl/include" + /> + <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 $(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib $(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib" + /> + <Tool + Name="VCALinkTool" +@@ -354,7 +354,7 @@ + /> + <Tool + Name="VCCLCompilerTool" +- AdditionalIncludeDirectories="$(opensslDir)\inc64" ++ AdditionalIncludeDirectories="$(WORKDIR)/UnpackedTarball/openssl/include" + /> + <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 $(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib $(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib" + TargetMachine="17" + /> + <Tool +@@ -417,7 +417,7 @@ + /> + <Tool + Name="VCCLCompilerTool" +- AdditionalIncludeDirectories="$(opensslDir)\inc32" ++ AdditionalIncludeDirectories="$(WORKDIR)/UnpackedTarball/openssl/include" + /> + <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 $(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib $(WORKDIR)\UnpackedTarball\openssl\out32dll\ssleay32.lib" + /> + <Tool + Name="VCALinkTool" +@@ -480,7 +480,7 @@ + /> + <Tool + Name="VCCLCompilerTool" +- AdditionalIncludeDirectories="$(opensslDir)\inc64" ++ AdditionalIncludeDirectories="$(WORKDIR)/UnpackedTarball/openssl/include" + /> + <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 $(WORKDIR)\UnpackedTarball\openssl\out32dll\libeay32.lib $(WORKDIR)\UnpackedTarball\openssl\out32dll\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>$(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> + <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> +@@ -271,10 +271,6 @@ + <Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project> + <ReferenceOutputAssembly>false</ReferenceOutputAssembly> + </ProjectReference> +- <ProjectReference Include="ssl.vcxproj"> +- <Project>{e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0}</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 @@ + exts.append( Extension('_socket', ['socketmodule.c'], + depends = ['socketmodule.h']) ) + # Detect SSL support for the socket module (via _ssl) ++ ooosslinc = os.environ.get('WORKDIR') + \ ++ '/UnpackedTarball/openssl/include/' + search_for_ssl_incs_in = [ ++ ooosslinc, + '/usr/local/ssl/include', + '/usr/contrib/ssl/include/' + ] +@@ -769,8 +774,12 @@ + ['/usr/kerberos/include']) + if krb5_h: + ssl_incs += krb5_h ++ ooossllib = os.environ.get('WORKDIR') + \ ++ '/UnpackedTarball/openssl' ++ 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/' + ] ) + |