summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2019-10-01 20:28:34 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2019-10-01 20:29:09 +0100
commit150f49cdb500318a543afebda095b3127fdc7f95 (patch)
tree378e13dd51df9c394d8b2b25af2c2a1242b07618 /dev-libs/libffi-compat/libffi-compat-3.2.1-r3.ebuild
parentnet-p2p/cpuminer-opt: 3.9.8.1 version bump (diff)
downloadgentoo-150f49cdb500318a543afebda095b3127fdc7f95.tar.gz
gentoo-150f49cdb500318a543afebda095b3127fdc7f95.tar.bz2
gentoo-150f49cdb500318a543afebda095b3127fdc7f95.zip
dev-libs/libffi-compat: new package, provides libffi.so.6
There are still a few binary-only packages out there that rely on 'libffi.so.6' presence. This package provides these libraries. No development headers here. Thus this library can co-exist with dev-libs/libffi:0/7 package. Ebuild is based on dev-libs/libffi. We can fast-stabilize it if in-tree stable packages do rely on libffi.so.6 (they should not). The patch is almost entirely by Timo Rothenpieler. I renamed a package and made a few minor tweaks. Fix-by: Timo Rothenpieler Reported-by: Timo Rothenpieler Closes: https://bugs.gentoo.org/695964 Package-Manager: Portage-2.3.76, Repoman-2.3.17 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'dev-libs/libffi-compat/libffi-compat-3.2.1-r3.ebuild')
-rw-r--r--dev-libs/libffi-compat/libffi-compat-3.2.1-r3.ebuild52
1 files changed, 52 insertions, 0 deletions
diff --git a/dev-libs/libffi-compat/libffi-compat-3.2.1-r3.ebuild b/dev-libs/libffi-compat/libffi-compat-3.2.1-r3.ebuild
new file mode 100644
index 000000000000..f8eebf3461e1
--- /dev/null
+++ b/dev-libs/libffi-compat/libffi-compat-3.2.1-r3.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit eutils libtool multilib multilib-minimal toolchain-funcs
+
+DESCRIPTION="a portable, high level programming interface to various calling conventions"
+HOMEPAGE="https://sourceware.org/libffi/"
+SRC_URI="ftp://sourceware.org/pub/libffi/libffi-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="6" # libffi.so.6
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="debug pax_kernel test"
+
+RDEPEND="!dev-libs/libffi:0/0" # conflicts on libffi.so.6
+DEPEND="test? ( dev-util/dejagnu )"
+
+DOCS="ChangeLog* README"
+
+PATCHES=(
+ "${FILESDIR}"/libffi-3.2.1-o-tmpfile-eacces.patch #529044
+ "${FILESDIR}"/libffi-3.2.1-complex_alpha.patch
+ "${FILESDIR}"/libffi-3.1-darwin-x32.patch
+ "${FILESDIR}"/libffi-3.2.1-complex-ia64.patch
+ "${FILESDIR}"/libffi-3.2.1-include-path.patch
+ "${FILESDIR}"/libffi-3.2.1-include-path-autogen.patch
+ "${FILESDIR}"/libffi-3.2.1-ia64-small-struct.patch #634190
+ "${FILESDIR}"/libffi-3.2.1-musl-emutramp.patch #694916
+)
+
+S=${WORKDIR}/libffi-${PV}
+ECONF_SOURCE=${S}
+
+src_prepare() {
+ default
+
+ sed -i -e 's:@toolexeclibdir@:$(libdir):g' Makefile.in || die #462814
+ elibtoolize
+}
+
+multilib_src_configure() {
+ use userland_BSD && export HOST="${CHOST}"
+ econf \
+ --disable-static \
+ $(use_enable pax_kernel pax_emutramp) \
+ $(use_enable debug)
+}
+
+multilib_src_install() {
+ dolib.so .libs/libffi.so.${SLOT}*
+}