non port: editors/libreoffice/files/patch-bridges_source_cpp__uno_gcc3__linux__x86-64_except.cxx |
Number of commits found: 2 |
Wednesday, 27 Apr 2022
|
16:53 Tijl Coosemans (tijl)
editors/libreoffice: make robust against __cxa_exception ABI changes
Patch libreoffice to replace __cxa_get_globals()->caughtExceptions,
which is a pointer to the start of a struct __cxa_exception, with
__cxa_current_primary_exception(), which is a pointer to the end. This
allows struct __cxa_exception to be extended at the start as was
recently done in FreeBSD main and stable/13 on 64-bit architectures.
Recently on FreeBSD main and stable/13 __attribute__((__aligned__)) was
added to struct _Unwind_Exception which changes its size on 32-bit
architectures, and that of __cxa_exception as well. Patch libreoffice
to detect this so packages built on 13.0 still work on 13.1.
Change the LIB_DEPENDS on libunwind to a BUILD_DEPENDS because we only
need unwind.h (for FreeBSD 13.0 and older where that header is hidden
in /usr/include/c++/v1).
PR: 263596
Approved by: office (fluffy)
35a5054 |
Wednesday, 9 Mar 2022
|
07:28 Dima Panov (fluffy) Author: Dimitry Andric
editors/libreoffice: work around changed alignment of __cxa_exception
LibreOffice has special detection for the change in alignment and size
of struct cxa_exception, when using libc++abi. However, this updated
alignment also applies to libunwind and upstream libcxxrt, and will soon
apply to our libcxxrt too.
Enable the special detection unconditionally for x86_64 and aarch64, so
libreoffice packages built on 13.0-R (with the old alignment) will
seamlessly work on 13.1-R (which will have the new alignment).
PR: 262008
f88f34d |
Number of commits found: 2 |