commit: aff5919e4a0167b9f565ab4064b3c0884e4f5630
Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 23 10:28:36 2025 +0000
Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sun Feb 23 10:30:27 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aff5919e
dev-db/sqlite-3.49.1: implement "legacy soname" handling for Mach-O
passing --soname=legacy breaks for Mach-O targets as it emits soname
options which are not understood. Fix up the install_name manually
instead as there is no --install_name=legacy equivalent.
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>
dev-db/sqlite/sqlite-3.49.1.ebuild | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/dev-db/sqlite/sqlite-3.49.1.ebuild
b/dev-db/sqlite/sqlite-3.49.1.ebuild
index 3deeb24b18ab..ce81dc0b2788 100644
--- a/dev-db/sqlite/sqlite-3.49.1.ebuild
+++ b/dev-db/sqlite/sqlite-3.49.1.ebuild
@@ -322,8 +322,10 @@ multilib_src_configure() {
fi
fi
- # set SONAME for the library
- options+=( --soname=legacy )
+ if [[ ${CHOST} != *-darwin* ]] ; then
+ # set SONAME for the library
+ options+=( --soname=legacy )
+ fi
# https://sqlite.org/forum/forumpost/4f4d06a9f6683bb9
tc-export_build_env BUILD_CC
@@ -374,6 +376,15 @@ multilib_src_test() {
multilib_src_install() {
emake DESTDIR="${D}" HAVE_TCL="$(usex tcl 1 "")"
TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}" install
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # fix install_name, soname=legacy doesn't work for this (but
+ # breaks the build instead)
+ install_name_tool \
+ -id
"${EPREFIX}/usr/$(get_libdir)/libsqlite3$(get_libname 0)" \
+ "${ED}/usr/$(get_libdir)/libsqlite3$(get_libname
${PV})" \
+ || die "failed to fix install_name"
+ fi
+
if use tools && multilib_is_native_abi; then
install_tool() {
if [[ -f ".libs/${1}" ]]; then