Date: Wed, 27 Apr 2022 17:05:43 +0000 From: bugzilla-noreply@freebsd.org To: office@FreeBSD.org Subject: [Bug 263596] editors/libreoffice: make robust against __cxa_exception ABI changes Message-ID: <bug-263596-25061-lgcZS4adsc@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-263596-25061@https.bugs.freebsd.org/bugzilla/> References: <bug-263596-25061@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D263596 --- Comment #3 from commit-hook@FreeBSD.org --- A commit in branch 2022Q2 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=3Dbd9f0cee99a8822c19b155fd7c05bdf= b5bce3c9d commit bd9f0cee99a8822c19b155fd7c05bdfb5bce3c9d Author: Tijl Coosemans <tijl@FreeBSD.org> AuthorDate: 2022-04-27 16:51:19 +0000 Commit: Tijl Coosemans <tijl@FreeBSD.org> CommitDate: 2022-04-27 17:01:40 +0000 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) (cherry picked from commit 35a5054819f15db65cd25a661887805550aedbc7) editors/libreoffice/Makefile | 12 +--- ...ce_cpp__uno_gcc3__linux__aarch64_abi.cxx (gone) | 11 ---- ...cpp__uno_gcc3__linux__aarch64_uno2cpp.cxx (new) | 25 ++++++++ ...s_source_cpp__uno_gcc3__linux__intel_except.cxx | 60 ++++++++++++++++-- ..._source_cpp__uno_gcc3__linux__x86-64_except.cxx | 46 +++++++++++--- ...es-source-cpp_uno-gcc3_linux_powerpc-except.cxx | 74 ++++++++++++++----= ---- ...-source-cpp_uno-gcc3_linux_powerpc64-except.cxx | 52 ++++++++------- 7 files changed, 197 insertions(+), 83 deletions(-) --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-263596-25061-lgcZS4adsc>