Commit Graph
29 Commits
Author SHA1 Message Date
Taichi Haradaguchi 5e3510dbb6 tdf#116412: include bz2 in internal python
Change-Id: Ie257446692227ae689fad2e61a42405a68e4f665
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139580
Tested-by: Jenkins
Reviewed-by: Taichi Haradaguchi <20001722@ymail.ne.jp>
2023-07-30 09:20:29 +02:00
Andras Timar 86c53eb59a fix internal python build on powerpc64le-unknown-linux-gnu
Change-Id: I49c1368542a1af5dbbf377dbd8cb0cad8c6e2a38
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135174
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146689
Tested-by: Jenkins
2023-02-09 12:08:24 +00:00
Stephan Bergmann 70bcf9e8be Remove support for AIX
As discussed in the mailing list thread starting at
<https://lists.freedesktop.org/archives/libreoffice/2023-January/089808.html>
"Plan to remove dead C++ UNO bridge implementations (bridges/source/cpp_uno/*)",
the bridge implementation at bridges/source/cpp_uno/gcc3_aix_powerpc is
apparently dead and should thus be removed.  However, that was the only bridge
implementation for AIX, which implies that support for the AIX platform as a
whole is dead and should thus be removed.

Change-Id: I96de3f7f97d4fd770ff78256f0ea435383688be9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146057
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-01-27 07:28:16 +00:00
Stephan Bergmann 5931638fda external/python3: Explicitly check that all extension modules got built
...to avoid issues like we now experienced on Jenkins box tb76, where e.g.
<https://ci.libreoffice.org/job/gerrit_linux_clang_dbgutil/108402/> failed with
just an unhelpful

> /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/external/python3/ExternalPackage_python3.mk:46: *** file /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/python3/LO_lib/_elementtree.cpython-3.8d.so does not exist in the tarball.  Stop.
> make[1]: *** Waiting for unfinished jobs....
> Makefile:299: recipe for target 'build' failed
> make: *** [build] Error 2

after ExternalProject_python3 had been built successfully, outputting just

> [build PRJ] python3

even though its workdir/UnpackedTarball/python3/build.log states

> *** WARNING: renaming "_elementtree" since importing it failed: pyexpat version is incompatible

and

> Following modules built successfully but were removed because they could not be imported:
> _elementtree

(but which got hidden by gbuild)

Change-Id: I28904ef41cb823e308bb8e15cbe969872702cb55
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130355
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-23 11:12:10 +01:00
Jan-Marek Glogowski 013ddc4f53 Switch OPENSSL config var from negative to positive
- align with most of the rest of config_host
- rename DISABLE_OPENSSL to ENABLE_OPENSSL
- make this configurable

Change-Id: Ic3b41fcdda38db66134939f12265e0da24833d60
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114564
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2021-05-05 21:14:30 +02:00
Jan-Marek Glogowski 5e1b3e924a Rename LO Windows arm64 ID to aarch64
The Windows platform is called Arm64. But now that the ID for Mac
is also going to be renamed from arm64 to aarch64, this get's rid
of the arm64 as the UNO identifier and user in gbuild, just like
on all other Arm64 platforms.

Change-Id: I60a7eafd04b426f17b6e41ad9a09e6405c0d4173
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112973
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-03-23 23:46:12 +01:00
Julien Nabet 8aae3b37a6 Fix build error in Python3 for Raspberry pi4b
/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>
2021-01-02 22:09:52 +01:00
Thomas Viehmann 12142490cd Enable Python Py_DEBUG setting when built with --enable-dbgutil on Linux
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-12-01 10:16:17 +01:00
Jan-Marek Glogowski bd066a17a2 python3: fix Windows Arm64 build
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-17 06:39:06 +02:00
Stephan Bergmann ee5408d025 Name of python.bin-gdb.py must match name of python.bin executable
...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-24 15:28:54 +02:00
Jan-Marek Glogowski b4dfba9477 python3: update to 3.8.4
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-17 10:15:06 +02:00
Luboš Luňák 5bcd333501 revert the gyp-based nss build changes
https://lists.freedesktop.org/archives/libreoffice/2020-March/084769.html
etc.

This reverts commit c76fdcf1cf.
This reverts commit 10f52ab4d2.
This reverts commit eac806e8dc.
This reverts commit d591a682e4.
This reverts commit 12235d3390.
This reverts commit 23245f723f.
This reverts commit 91658b402b.
This reverts commit 5feadfad0c.
This reverts commit fecca49c30.
This reverts commit c6a9454e74.
This reverts commit a1a62a7041.
This reverts commit 8512f4ca09.
This reverts commit 532ffb7a29.

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-27 12:07:27 +01:00
Luboš Luňák 8512f4ca09 build nss using their new build system (gyp/ninja-based)
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-23 14:31:04 +01:00
Michael Stahl e62b9937ed tdf#130404 python3: add new windows .pyd modules for 3.7
Unfortunately forgot that in b10be5d484

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-19 10:24:11 +01:00
Michael Stahl db75ec1870 python3: fix 32-bit x86 build
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-09 13:36:28 +01:00
Michael Stahl ebb6c2576a python3: remove _uuid module
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-08 18:22:06 +01:00
Michael Stahl b10be5d484 python3: upgrade to release 3.7.6
* 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>
2020-01-08 10:22:17 +01:00
Stephan Bergmann 93e6a823bd external/python3: Drop nis.cpython-*m.so
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-04-07 13:39:12 +02:00
Stephan Bergmann 8646ab97dc Remove MinGW support
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-10 18:01:27 +00:00
Michael Stahl 743f9fc86f python3: upgrade to release 3.5.3
- 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-17 22:42:01 +00:00
Julien Nabet 486efbfc74 tdf#103363: add unicodedata and import idna encoding for mailmerge
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-18 21:58:54 +00:00
Michael Stahl b078e0d638 python3: put a RPATH into libpython3.so
libpython3.so is the "ABI compatible" wrapper library around
libpython3.5m.so - it is not actually used by anything in LO right now,
but let's ensure it has RPATH $ORIGIN just in case.

This revealed that the AIX patch in python3 accidentally changed the
SONAME of libpython3.5m.so from upstream's libpython3.5m.so.1.0
on ELF platforms, because the SONAME variable was set in the shell
command but read as a make variable in the next line, which is actually
evaluated earlier.

So rename a few files in packages to use the upstream SONAME.

Change-Id: I3611f75eee62b0993b853230521a2fa41ac5cd9c
2016-09-21 23:58:03 +02:00
Markus Mohrhard 660e559781 uitest: we will need the python unittest module
Change-Id: Ic0589be9b3769279b201dfd314534a087c7f4309
2016-06-22 18:19:33 +02:00
David Ostrovsky 761053abd8 Fix python packaging on MSVC 14.0, 32bit
Change-Id: I5604aa21981c216e992cbefae043acfd0ab07bbd
Reviewed-on: https://gerrit.libreoffice.org/22626
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: David Ostrovsky <david@ostrovsky.org>
2016-02-23 07:21:30 +00:00
David Ostrovsky c2e4e74138 Python3.5: Remove external dependencies: readline and lzma
Change-Id: Ie5cd1c0e186920f3b34d3986aa995a5c3be9c58a
2015-10-25 11:18:08 +01:00
David Ostrovsky 147cb6a2ae Bump python to 3.5
3.5 release is needed for MSVC 14.0 (aka VS 2015) support. Python 3.5
removed build toolchain support for MSVC 2013. Because we still need
to support it, we duplicate the Python directory in externals and
copy old patches and dispatch to this directory for MSVC 2013. Once
the support for MSVC 2013 is dropped on master, this directory can be
removed again.

Change-Id: Idf7bc351239582f583ecbdb53c923cbdcf968089
Reviewed-on: https://gerrit.libreoffice.org/17352
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
2015-10-25 08:29:39 +00:00
Michael Stahl dbe2f8900f python3: stop symlinking directories on WNT
Change-Id: I281d3dd66a8db8da44cce60bade4a0ee7d1df763
2014-06-09 17:05:48 +02:00
Michael Stahl 45c537a118 fdo#73087: python3: upgrade to version 3.3.3
- drop obsolete/upstreamed patches:
  python-3.3.0-ffi-clang.patch.1
  python-3.3.0-15833.patch.1
  one hunk of python-3.3.0-aix.patch.1 in fficonfig.py.in

Change-Id: I12f0f78a172067986b63455847015ea2430a084c
Reviewed-on: https://gerrit.libreoffice.org/7278
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2014-01-06 16:58:42 +00:00
Khaled Hosny 9dc3f0f5af 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>
2013-11-04 02:40:45 -06:00