commit: 746f61ecff50b9bea06d09a85746c01fb8eda87c Author: Fabian Groffen <grobian <AT> gentoo <DOT> org> AuthorDate: Sat Nov 22 13:16:54 2025 +0000 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org> CommitDate: Sat Nov 22 13:16:54 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=746f61ec
dev-libs/xxhash-0.8.3-r1: fix install_name for Darwin (version 2) Building on Darwin requires LIBDIR to be set in order to embed the correct directory in the shared library (install_name). Move PREFIX and LIBDIR to myemake, and because install now only sets destdir, pass that directly instead of via an array. Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org> dev-libs/xxhash/xxhash-0.8.3-r1.ebuild | 54 ++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/dev-libs/xxhash/xxhash-0.8.3-r1.ebuild b/dev-libs/xxhash/xxhash-0.8.3-r1.ebuild new file mode 100644 index 000000000000..717ad92fcfde --- /dev/null +++ b/dev-libs/xxhash/xxhash-0.8.3-r1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic multilib-minimal toolchain-funcs + +DESCRIPTION="Extremely fast non-cryptographic hash algorithm" +HOMEPAGE="https://xxhash.com/" +SRC_URI="https://github.com/Cyan4973/xxHash/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S=${WORKDIR}/xxHash-${PV} + +LICENSE="BSD-2 GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +src_prepare() { + default + + multilib_copy_sources +} + +src_configure() { + # Needed for -Og to be buildable, otherwise fails a/ always_inline (bug #961093) + # https://github.com/Cyan4973/xxHash?tab=readme-ov-file#binary-size-control + is-flagq '-Og' && append-cppflags -DXXH_NO_INLINE_HINTS + multilib-minimal_src_configure +} + +myemake() { + # need LIBDIR set during compile too for Darwin, bug #966267 + emake \ + AR="$(tc-getAR)" \ + CC="$(tc-getCC)" \ + PREFIX="${EPREFIX}"/usr \ + LIBDIR="${EPREFIX}"/usr/$(get_libdir) \ + "${@}" +} + +multilib_src_compile() { + myemake +} + +multilib_src_test() { + # Injecting CPPFLAGS into CFLAGS is needed for test_sanity + myemake CFLAGS="${CPPFLAGS} ${CFLAGS}" check +} + +multilib_src_install() { + myemake DESTDIR="${D}" install + einstalldocs + + rm "${ED}"/usr/$(get_libdir)/libxxhash.a || die +}
