# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=5 inherit epatch flag-o-matic toolchain-funcs multilib multilib-minimal DESCRIPTION="Extremely fast library for floating-point convolution" HOMEPAGE="http://cr.yp.to/djbfft.html" SRC_URI="http://cr.yp.to/djbfft/${P}.tar.gz" LICENSE="public-domain" SLOT="0" KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux" IUSE="" DOCS=( CHANGES README TODO VERSION ) src_prepare() { SOVER="${PV:0:1}.${PV:2:1}.${PV:3:1}" # a.bc -> a.b.c # mask out everything, which is not suggested by the author (RTFM)! ALLOWED_FLAGS="-fstack-protector -march -mcpu -pipe -mpreferred-stack-boundary -ffast-math" strip-flags SONAME="libdjbfft.so.${SOVER}" epatch \ "${FILESDIR}"/${P}-gcc3.patch \ "${FILESDIR}"/${P}-shared.patch \ "${FILESDIR}"/${P}-headers.patch multilib_copy_sources } multilib_src_configure() { [[ ${ABI} == x86* ]] && append-cflags -malign-double sed -i -e "s:\"lib\":\"$(get_libdir)\":" hier.c || die echo "$(tc-getCC) ${CFLAGS} -fPIC" > "conf-cc" echo "$(tc-getCC) ${LDFLAGS}" > "conf-ld" echo "${ED}usr" > "conf-home" einfo "conf-cc: $( ${t}.out || die "test ${t} failed" done } multilib_src_install() { emake LIBDJBFFT=${SONAME} install ./install || die "install failed" dosym ${SONAME} /usr/$(get_libdir)/libdjbfft.so dosym ${SONAME} /usr/$(get_libdir)/libdjbfft.so.${SOVER%%.*} }