summaryrefslogtreecommitdiff
path: root/external/python3
AgeCommit message (Collapse)Author
2021-01-18mac: don't put script files into Contents/MacOS or framework-bin directoryChristian Lohmaier
Signing them as executable code would require external attributes, and those in turn break packaging into hfs+ dmg when building on apfs with Big Sur. It is not a new thing - the old Code Signing in Depth technote https://developer.apple.com/library/archive/technotes/tn2206/_index.html already reads: "Store Python, Perl, shell, and other script files and other non-Mach-O executables in your app's Contents/Resources directory. While it's possible to sign such executables and store them in Contents/MacOS, this is not recommended. […] Put another way, a properly-signed app that has all of its files in the correct places will not contain any signatures stored as extended attributes." The patch does exactly that for LO and the shipped python framework and adds symlinks for the moved files. Same applies for the Language pack applescript and the tarball - those are also moved into Contents/Resources Change-Id: Iab21e77b73f941248ca89c6e80703fdf67a1057c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109537 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2021-01-02Fix build error in Python3 for Raspberry pi4bJulien Nabet
/home/pi/lo/libreoffice/external/python3/ExternalPackage_python3.mk:48: *** file /home/pi/lo/libreoffice/workdir/UnpackedTarball/python3/LO_lib/_sysconfigdata__linux_armv7l-unknown-linux-gnueabihf.py does not exist in the tarball. Arrêt. Change-Id: If348c9f55883c1afcc37ff38e84361786bef1845 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108595 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2020-12-03Drop Python modules we don't want on macOS, too, like on other platformsTor Lillqvist
On macOS, for various reasons, we use a different approach than on other platforms to construct the bundled Python. Instead of explicitly listing what to include (out of what Python contains and builds) (in ExternalPackage_python3.mk), after Python is built, we remove stuff we don't want (in ExternalProject_python3.mk) and then include everything left in the LibreOfficePython.framework (in GeneratedPackage_python3.mk). This fixes a problem in App Store review: For some reason the review said that the setcchar() function from the ncurses library, used by Python's curses module, is non-public. No idea why the (automated) review picked on that function. As far as I see from the ncurses header in the SDK, that function is no less public than the other ncurses functions that the Python module uses. But oh well, we don't actually ship the curses module anyway on other platforms, so just drop it on macOS, too. And while at it, drop the other unwanted ones, too. And any binary shared libraries for them. Change-Id: Idecaf10a6fb1c59e8711095927f5699b8d2ec98e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107055 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107141 Tested-by: Tor Lillqvist <tml@collabora.com>
2020-12-02Guard against sysconf(_SC_OPEN_MAX) returning LONG_MAXTor Lillqvist
That seems to happen in a sandboxed process on macOS, at least. This caused an apparent hang when invoking Python, for instance simply through Tools > Macros > Run Macro... . Change-Id: I6bc055b44f298251ed596084538b98442c215fce Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107013 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-12-02external/python3: Silence UBSan errors with --with-pydebugStephan Bergmann
...that happen when building ExternalProject_python3 itself after 12142490cd43f8568ab29e0ddfa75b334d6d39d5 "Enable Python Py_DEBUG setting when built with --enable-dbgutil on Linux": For one, silence > Modules/posixmodule.c:14395:9: runtime error: left shift of 34 by 26 places cannot be represented in type 'int' > #0 in all_ins at workdir/UnpackedTarball/python3/./Modules/posixmodule.c:14395:9 where at least my kernel-headers-5.9.9-200.fc33.x86_64 /usr/include/linux/memfd.h has > #define MFD_HUGE_16GB HUGETLB_FLAG_ENCODE_16GB and /usr/include/asm-generic/hugetlb_encode.h has > #define HUGETLB_FLAG_ENCODE_16GB (34 << HUGETLB_FLAG_ENCODE_SHIFT) For another (and as predicted in 29d47d22c43e6adc1850b7db5880028dcd07d1b3 "Fix passing --disable-optimized into external/python3": "in a Linux UBsan build, making ExternalProject_python3 would have started to cause some 'applying zero offset to null pointer' failures, but which would have been easy to fix"), silence > Objects/listobject.c:551:24: runtime error: applying zero offset to null pointer > #0 in list_concat at workdir/UnpackedTarball/python3/Objects/listobject.c:551:24 Change-Id: I0523cd35e393000c8e67629a0522b2db1d8c16f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106984 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-12-01Enable Python Py_DEBUG setting when built with --enable-dbgutil on LinuxThomas Viehmann
This has been suggested on IRC for testing fixes/avoiding regressions when working on the GIL locking in PyUNO. Change-Id: Ifda21a867b3c0c7db636a9ec950050012e4742de Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106791 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-11-19Add comment on how to run Python's own unit testsTor Lillqvist
Change-Id: Id62a688d2ddf7493d419a00a9fd0dfc6a6f13f0c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106173 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-11-15Make one more thing in Python compile for macOS on arm64Tor Lillqvist
Change-Id: I6716048f0b58eb502b9d1ade8a13b8e33e4aaf2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105905 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-11-15Make python3 build on macOS 11, including for arm64Tor Lillqvist
There is no /usr/lib/libz.dylib any longer in macOS 11. No idea whether it works (especially on arm64), but that is another issue. Change-Id: I92ac0c500388730eca0be4766f07b1af2d2808e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105897 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-09-17python3: fix Windows Arm64 buildJan-Marek Glogowski
Change-Id: I2e9f9ca5fcf40a3ff53c036ebc51a75b882d91f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102854 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-09-15WIN add and apply default msbuild platform+configJan-Marek Glogowski
Adds three Windows gb_* variables: - gb_MSBUILD_CONFIG_AND_PLATFORM can be passed as msbuild flags - gb_MSBUILD_PLATFORM maps debug / release settings - gb_MSBUILD_CONFIG maps the CPUTYPE to the default msbuild names and converts the users in external projects. Change-Id: Ie9b817721180d78d104db11c44241e4b3e46bba9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102701 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-07-24Name of python.bin-gdb.py must match name of python.bin executableStephan Bergmann
...for gdb to autoload it Change-Id: I9a65a03fe18623181d5791b4596b4416228c6c8c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99372 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-07-17python3: update to 3.8.4Jan-Marek Glogowski
With all the prerequisites in place, LO can be updated to the current Python release. Interestingly I found that Cygwin always seems to use LC_COLLATE=C, probably because the default collation rules are missing. Then there are the changes introduced in "PEP 587 -- Python Initialization Configuration", which appearingly have modified the DLL search path behaviour on Windows, so the OpenSLL DLLs aren't found anymore in the program directory. As a workaround, the OpenSLL and libffi DLLs are now (also) installed into the Python lib dir on Windows. Change-Id: Ib82f7b77213da9c525f8c79a13d128d9eec9ca64 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98437 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-07-17libffi: build DLL on WindowsJan-Marek Glogowski
The build setup is rather horrible, with some minimal gcc MSVC wrapper. But the DLL is a prerequisite for the Python 3.8 build, which dropped the internal libffi. It's also possible to build it statically, but then you have to patch the Python 3 _ctypes msbuild properties. This also defaults to explicit --build and --host settings, even without a cross build, because the predicted name would otherwise differ (*-unknown-* instead of *-pc-*). Additionally a "make install" also fails... Change-Id: Ifb7dac840e23efffb9a5e342560aef9e11e0db79 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98436 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-07-17openssl: update to 1.1.1gJan-Marek Glogowski
The OpenSSL 1.1.1 release is currently the only supported version and it already has the Windows Arm64 support I was looking for. This change also explicitly enables thread support, which Python depends on since release 3.7, which removed the --without-threads build option. But the explicit OPENSSL_THREADS was just added in 3.8.4, so the old no-threads build fails now and was wrong since probably much longer. Change-Id: I61d94f966bc59407f213f4a81f0a49d0c05f8948 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98435 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-04-29Fix gb_ExternalProject_get_state_target,python3,removeunnecessarystuffStephan Bergmann
...which had been introduced with 0f2f719ccd5544eb37d1aacb0a50c317ae963e50 "tdf#106324: Remove unnecessary test folder from LibreOfficePython framework", but had apparently forgotten to touch the target file when done, so any make target that would (indirectly) depend on it would keep rebuilding python3 et al. Change-Id: I0ac3611383c82c4e91a1eaa02e4cf5db28d326fd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93117 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-16Fix passing --disable-optimized into external/python3Stephan Bergmann
This had originally been covered by dccf47b7f61e088622747539d1487590080da3b8 "Build python3 with debug flags if --enable-debug", which got broken by eeeec33ada5923f1f534334b22c15d6e2c6f1d35 "merge --enable-selective-debuginfo into --enable-symbols" (which removed the definition of gb_Module_CURRENTMODULE_DEBUG_ENABLED without adapting its use here). But looking again, setting OPT for workdir/UnpackedTarball/python3/configure.ac based on our various flags doesn't seem to be such a good idea anyway: It is used to specify a mixture of debuginfo (-g; which is set rather unconditionally, so no need for us to cater for --enable-symbols here), optimization (-fwrapv, -O*), and warning (-Wall) flags. So better let workdir/UnpackedTarball/python3/configure.ac keep deciding for itself what flags to set in OPT, and then just override via CFLAGS those that do not suite us. (Where it appears to be a happy coincidence that the Python build system puts CFLAGS after OPT, so the former can override the latter.) (An alternative approach could have been to pass --with-pydebug based on e.g. --enable-dbgutil, as the former (a) causes OPT to include -O0 rather than -O3, and (b) is documented to change the ABI (see workdir/UnpackedTarball/python3/configure.ac: "Py_DEBUG implies assertions, but also changes the ABI."), so probably best fits --enable-dbgutil. However, at least on Linux, --with-pydebug produces workdir/UnpackedTarball/python3/libpython3.7dm.so rather than workdir/UnpackedTarball/python3/libpython3.so, so would have required further modifications. Also, in a Linux UBsan build, making ExternalProject_python3 would have started to cause some "applying zero offset to null pointer" failures, but which would have been easy to fix.) (I noticed the missing -O0 when I attached gdb to an instdir/program/python.bin process and `py-bt` only showed "(frame information optimized out)" frames, which this change fixes for --disable-optimized builds.) Change-Id: I9583e60692ae7130377422062f3c6df9334d693f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92362 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-27revert the gyp-based nss build changesLuboš Luňák
https://lists.freedesktop.org/archives/libreoffice/2020-March/084769.html etc. This reverts commit c76fdcf1cfa1242e66b50ebe80d6eac1baae37a9. This reverts commit 10f52ab4d27263439d59f55f40e88ad2fde0cf71. This reverts commit eac806e8dcd9ee6439ac8695978ff6b62cc6b8d2. This reverts commit d591a682e46ff352f06a61c024ef661dd17f4ea4. This reverts commit 12235d3390a7fc5146bf65f9d6166034b8a048ee. This reverts commit 23245f723fb29262b8543d6447d1b0bb69cb50fb. This reverts commit 91658b402b66b67c785687d5b3a76e3183fe76bf. This reverts commit 5feadfad0cc3be2680213d2e5f6f786b2f4cc74f. This reverts commit fecca49c309fc723c524f12fa671114b316a5562. This reverts commit c6a9454e744289cf2004b42b3c90854b2db8382b. This reverts commit a1a62a70411cb6041b5930ead08280d5e1e7b5f9. This reverts commit 8512f4ca090c85477a6670438aeefe7fdfcf8a98. This reverts commit 532ffb7a297d55b495141ce33692df5d9917b54f. Change-Id: Iaa48d692bea2ca2468cdd5f8ad26ad91c0c31dde Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91199 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-23build nss using their new build system (gyp/ninja-based)Luboš Luňák
This requires installed ninja, gyp is included as source. This allows nss be built as a parallel build, unlike the old Makefile build system. Since gyp internally uses python, even recursively, this requires more complicated setup in case our internal python is used. Moreover gyp itself seems to be kind of deprecated itself and hasn't been ported to python3 yet, so that needs patching too. So far only easy Unix-like systems are converted, Windows I'll do later, the more complicated systems I'll leave to whoever has access to them. Change-Id: I358baad7690d2aa6df44bafa9244dc7cc828fc3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90115 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-04Bump Windows build baseline to Visual Studio 2019 16.4Stephan Bergmann
(where 16.4 is currently the latest version of Visual Studio 2019 available at <https://visualstudio.microsoft.com/downloads/>), see <https://lists.freedesktop.org/archives/libreoffice/2020-February/084575.html> "ESC meeting minutes: 2020-02-27": "Update baseline to VS2019 on master before 7.0 [...] check what’s the current patch level, require that? [...] no objections" The code from 4ea0059bca6dd84f10abcf52f6d6b81c1afec397 "VS detection: Fallback to old registry check if vswhere failed" has been removed in accordance with its comment "The below hack does not work for VS 2019 anyway, so should be removed when upgrading baseline. (Changing the comment "go to Start menu, open 'Visual Studio 2017', [...]" regarding the installation of GNU Make from source is somewhat arbitrary, but lets stick to the tradition of bumping that version number along with any build baseline bump.) Change-Id: Ic4fe8a3d347aa1748377f2d3205e302bff189b79 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89699 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Jenkins
2020-02-19tdf#130404 python3: add new windows .pyd modules for 3.7Michael Stahl
Unfortunately forgot that in b10be5d48433076f0b7238d818020f708553e114 Change-Id: I59043a576c45f9329a3fad9a5d50e7fefa901934 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88977 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-02-16GBUILD_TRACE, support for finding out where the build time is spentLuboš Luňák
See instructions in solenv/gbuild/Trace.mk . This generates a file than can be viewed e.g. in the Chromium tracing view. Change-Id: I5f90647c58ca729375525b6daed2d4918adc8188 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88754 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-01-24python3+WIN: don't fail copy of openssl DLLs+PDBsJan-Marek Glogowski
The LO python3 target fails for me on Windows with: C:\lode\dev\core\workdir\UnpackedTarball\python3\PCBuild\openssl.props(24,5): error MSB3030: Datei "C:/lode/dev/core/workdir/UnpackedTarball/openssl/out32dll\libcrypto-1_1.dll" konnte nicht kopiert werden, da die Datei nicht gefunden wurde. [C:\lode\dev\core\workdir\UnpackedTarball\python3\PCBuild\_ssl.vcxproj] Same for "C:/lode/dev/core/workdir/UnpackedTarball/openssl/out32dll\libssl-1_1.pdb" "C:/lode/dev/core/workdir/UnpackedTarball/openssl/out32dll\libcrypto-1_1.pdb" "C:/lode/dev/core/workdir/UnpackedTarball/openssl/out32dll\libssl-1_1.dll" Other files were also renamed in a previous hunk of this patch. For other people these failures are silently ignored, but they show up in their python3 build.log. But my msbuild version 15.9.21+g9802d43bc3 from VS2017 fails hard on these errors. So this just adapt the pdb and dll names to match the previous renames, which passes the copy calls, so the build continues. Change-Id: Iffc848c334caec534f6e99f8bf83a42da570bbb1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87358 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-01-09python3: bundle libffi for GNU/Linux buildsMichael Stahl
CPython commit f40d4ddff3c800b3c956a5e8820aabe3aa87cddd "Closes #27979: Remove bundled copy of libffi" causes a bit of a problem because it turns out that libffi isn't all that stable; there's libffi.so.5 on CentOS 6, libffi.so.6 on CentOS 7 and libffi.so.7 on lo_daily_update_gandalf tinderbox. So we have to bundle it in LO; it's only used on GNU/Linux currently. CPython commit 32119e10b792ad7ee4e5f951a2d89ddbaf111cc5 "bpo-35947: Update Windows to the current version of libffi (GH-11797)" also removes the libffi for MSVC, so in a future python upgrade we will have to build libffi for MSVC too. The libffi fork for MacOSX is still in CPython git master. (regression from b10be5d48433076f0b7238d818020f708553e114) Change-Id: Ibc20cf8cd3614cf9941b6970662bd930496776b2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86493 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-01-09python3: fix 32-bit x86 buildMichael Stahl
The reinvented wheel needs another subst. Change-Id: I5bc01b0213f00d383cf971d34f0dc2a9e6817ab9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86480 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-01-08python3: remove _uuid moduleMichael Stahl
Of course the autotetection in setup.py strikes again, the build will fail if the user doesn't have libuuid-devel installed; we'd need to add a check to LO's configure.ac for libuuid. Let's just not ship it, not sure if anybody needs it. Change-Id: I9079309da7d9c16e666fbab30542365124f97860 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86433 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-01-08python3: upgrade to release 3.7.6Michael Stahl
* external/python3/python-3.3.3-aix.patch.1: most of it doesn't apply and AIX port isn't maintained anyway so remove it for now * external/python3/ubsan.patch.0: apparently one of the files was removed * 0001-3.6-bpo-17239-Disable-external-entities-in-SAX-parse.patch.1: fixed upstream * python3-osx-avoid-new-10.13.patch.1: replace with simply passing ac_cv_func_utimensat=no to configure * external/python3/python-3.5.4-ssl.patch.1: project files to build OpenSSL removed upstream * There have been changes to how python locates OpenSSL; new variables OPENSSL_INCLUDES etc; it turns out that you have to pass one directory to --with-openssl, as the variables cannot be passed * libuuid.so.1 is a new dependency of the _uuid module * libffi.so.6 is a new dependency of the _ctypes module (the bundled copy of libffi for non-Darwin platforms was removed) * python-3.3.0-pythreadstate.patch.1: the PyThreadState functions have been changed such that CppunitTest_services asserts when there is a PyThreadAttach on top of PyThreadDetach on top of PyThreadAttach, i.e., 2 PyThreadState per thread (PyGILState_Check() fails). Instead of patching in additional workarounds, change PyThreadAttach so that it re-uses an existing PyThreadState if one exists for the thread. Change-Id: I24c19d79b43a30709261fd9db66312b2e3872fd9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/84765 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-11-19python3: upgrade to release 3.5.9Michael Stahl
Fixes CVE-2019-9948 CVE-2019-9740 CVE-2019-10160 CVE-2019-16056 and expat CVE-2019-15903. python-3.3.5-pyexpat-symbols.patch.1 fails to apply, and it's a mystery why --with-system-expat is used everywhere but on MacOSX, where 292af048ace2d4b455b2da3a22c784cb05db1d09 disabled it for no obvious reason, so try to remove the special case and get rid of the patch. Change-Id: I5ba4532eb6e7c2fb90daba95d132dcc7c9013d96 Reviewed-on: https://gerrit.libreoffice.org/83117 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-04-16Initial VS 2019 SupportTomoyuki Kubota
Change-Id: I8e08efb549ebd52c37183a1185d6de73f2b00601 Reviewed-on: https://gerrit.libreoffice.org/64630 Reviewed-by: himajin100000 <himajin100000@gmail.com> Reviewed-by: Michael Stahl <Michael.Stahl@cib.de> Tested-by: Michael Stahl <Michael.Stahl@cib.de>
2019-01-24Drop unnecessary gb_DEBUG_CFLAGSStephan Bergmann
...which was at maximum set to GCC's -finline-limit=0 -fno-inline (solenv/gbuild/platform/com_GCC_defs.mk). Those options were set for debug builds "since forever", but that looks very much like cargo cult: -fno-inline "is the default when not optimizing" anyway (<https://gcc.gnu.org/onlinedocs/gcc-7.4.0/gcc/Optimize-Options.html>), and it is unclear to me how -finline-limit=0 should have any impact beyond -fno-inline (and maybe was present for ancient compilers that only supported -finline-limit but not -fno-inline?). Change-Id: Id6752d03b1b7ec8763defabc5720d4dd08790874 Reviewed-on: https://gerrit.libreoffice.org/66836 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-16Minimum Supported Version is VS2017himajin100000
Change-Id: Id771f1fe0d8c6702a52836f6229a944d259fed4c Reviewed-on: https://gerrit.libreoffice.org/66424 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
2019-01-15python3: add patch bpo-17239: Disable external entities in SAX parserMichael Stahl
Change-Id: I44e969d8d3a8fe6b6426d61a1cbe83154c8518dd Reviewed-on: https://gerrit.libreoffice.org/66329 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
2018-12-29external/python3: Work around macOS Clang trunk errorStephan Bergmann
..."target does not support '.file' without a number", which was introduced into LLVM with <http://llvm.org/viewvc/llvm-project?view=revision&revision=349976> "[MC] Enable .file support on COFF and diagnose it on unsupported targets", stating: "The 'single parameter' .file directive appears to be an ELF-only featurea [sic] that is intended to insert the main source filename into the string table table [sic]." And <https://sourceware.org/binutils/docs-2.31/as/File.html> states about the default single (file name) argument version: "This statement may go away in future: it is only recognized to be compatible with old as programs." As external/python3 builds just fine on macOS with that .file directive removed, lets just do that for now. Change-Id: Ib28c29d0cacd151437447ccb2f6cfb8925e3e85a Reviewed-on: https://gerrit.libreoffice.org/65704 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-15tdf#106324: Remove unnecessary test folder from LibreOfficePython frameworkTor Lillqvist
No need to distribute that, apparently. We don't ship it on Windows, either. Change-Id: I76bf77311caceccd07afb0afa2f097b63f58bf54 Reviewed-on: https://gerrit.libreoffice.org/59034 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2018-06-05try building python in parallel on windowsNoel Grandin
Change-Id: Ib920ae6d6a3ced06ffe9f1fc4adba67d95f99a17 Reviewed-on: https://gerrit.libreoffice.org/55207 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-07external/python3: Drop nis.cpython-*m.soStephan Bergmann
At least Fedora 28 glibc-2.27-8.fc28 no longer provides the nis development headers and libraries. (It only still contains some binaries for backwards compatibility, in the libnsl sub-package: "This package provides the legacy version of libnsl library, for accessing NIS services.") There is probably no real need to have nis.cpython-*m.so contained in external/python3/ExternalPackage_python3.mk (it probably just happened to build fine when that list was originally created, so was included). Change-Id: Ic6128fd872432005c0ded76640c5b56781ca69a1 Reviewed-on: https://gerrit.libreoffice.org/52535 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-30Remove obsolete patchMike Kaganski
A leftover from commit 147cb6a2ae63debed3dd500e19b2776cebbc0031 Change-Id: I1744f87dfe508aea6cb17b4411594dad5771b028 Reviewed-on: https://gerrit.libreoffice.org/48877 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-09-20Avoid API present from macOS 10.13 if building to run on olderTor Lillqvist
utimensat() and futimens() are new in 10.13. Change-Id: I03448adb17b40a646771c37179bd70c787547ca3
2017-08-11python3: upgrade to release 3.5.4David Ostrovsky
Change-Id: I9300b2ec1e1dcedbcbfe793e1450166af1bf1944 Reviewed-on: https://gerrit.libreoffice.org/40944 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>
2017-05-30sal,external: remove checks for obsolete VCVER=120Michael Stahl
Change-Id: I4d32b7c4b2e545a8d979bc516f64cfcbf66ecd07
2017-05-30python3: remove obsolete python-3.3.3-msvc2012-winxp.patch.1Michael Stahl
...and python-3.3.0-msvc2012.patch etc. They were actually never applied to Python 3.5. Change-Id: I5beb5a81d55ab1921411d2351bdb397ff02ba75c
2017-02-22MSVC 14.0: Make it work with older SDK versionDavid Ostrovsky
Change-Id: I50a9e8b122250af445c2a1b3d0941d508e027318 Reviewed-on: https://gerrit.libreoffice.org/34528 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: David Ostrovsky <david@ostrovsky.org>
2017-02-21Fix check for non-empty UCRTVERSIONStephan Bergmann
...introduced with b862cbdd345ec57c2595629ded6a3969e1e65d56 "Support MSVC 15.0", but $(filter ...,) always expands to the empty string, and this is probably what was intended. Change-Id: I5865ea13ba3c3d52402bcba48f4f770f6c2b8862 Reviewed-on: https://gerrit.libreoffice.org/34482 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-02-15Support MSVC 15.0David Ostrovsky
New compiler changes quite some stuff: * Compiler detection done based on different registry key * .NET SDK detection done based on different registry key * Msbuild installation directory changed * Merge modules installation directory changed * SDK number in registry doesn't match the directory name: (registry key: 10.0.14393, directory name: 10.0.14393.0) * Compiler, include and library location directories changed * Architecture specific directory changed: x64 instead of amd64 * Compiler own include directory must be added with -I option * To force usage of SDK 10 (8.1 is selected per default) new switch WindowsTargetPlatformVersion is passed to msbuild, to avoid patching VC project files with this line: <WindowsTargetPlatformVersion><SDK>/WindowsTargetPlatformVersion> Known issues: * Firebird is broken: http://paste.openstack.org/show/594333 Change-Id: I148d7932aff43bbbd07bd493504df974726234c2 Reviewed-on: https://gerrit.libreoffice.org/31279 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: David Ostrovsky <david@ostrovsky.org>
2017-02-10Remove MinGW supportStephan Bergmann
In OOo times, there'd originally been efforts to allow building on Windows with MinGW. Later, in LO times, this has been shifted to an attempt of cross- compiling for Windows on Linux. That attempt can be considered abandoned, and the relevant code rotting. Due to this heritage, there are now three kinds of MinGW-specific code in LO: * Code from the original OOo native Windows effort that is no longer relevant for the LO cross-compilation effort, but has never been removed properly. * Code from the original OOo native Windows effort that is re-purposed for the LO cross-compilation effort. * Code that has been added specifially for the LO cross-compilation effort. All three kinds of code are removed. (An unrelated, remaining use of MinGW is for --enable-build-unowinreg, utilizing --with-mingw-cross-compiler, MINGWCXX, and MINGWSTRIP.) Change-Id: I49daad8669b4cbe49fa923050c4a4a6ff7dda568 Reviewed-on: https://gerrit.libreoffice.org/34127 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-02-08gbuild, python3: stop defining SOLARIS, and remove SOLARIS patchMichael Stahl
It's faster to change our code not to rely on -DSOLARIS than to wait for python developers to remove such nonsense from their public headers. Change-Id: I3ab05d41bbb51b91a2add599339ce334b5099330
2017-01-17python3: upgrade to release 3.5.3Michael Stahl
- fixes some minor CVEs - drop python-vc2013.patch.1 - drop python-3.3.3-py17797.patch.1: the bug was fixed in MSVC2015 runtime so not relevant - drop python-lsan.patch.0: fixed upstream - ubsan.patch.0: drop hunks that were fixed upstream - python-3.5.0-tcltk.disable.patch: merge into msvc-disable.patch.1 Change-Id: I2aecae446539d28eaf3eb64ee67581596019335d Reviewed-on: https://gerrit.libreoffice.org/33225 Reviewed-by: David Ostrovsky <david@ostrovsky.org> Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-01-17Fix patchStephan Bergmann
The original patch caused compilation of x86-ffi64.c to fail, but that failure was silently ignored by the build. Change-Id: I93a0cde041b8f9546873d6cc30c1b690da098642
2016-12-18tdf#103363: add unicodedata and import idna encoding for mailmergeJulien Nabet
Thank you Moggi for your help on how to add unicodedata module to Python! Change-Id: I071e9279d1de4748f9443ac2d624fe925288e408 Reviewed-on: https://gerrit.libreoffice.org/32140 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2016-12-16external/python3: Work around -fsanitize=alignmentStephan Bergmann
Change-Id: I26b927345594368f426ae89bfd5b645561d44c10