dev-libs/libffi: Sync with gentoo

It's from gentoo commit c79952c0fbc8e5bb1a6d29cdb4b71248dff21c1b.
This commit is contained in:
Krzesimir Nowak 2022-02-16 18:29:36 +01:00
parent 9803e717a1
commit cfd199531c
21 changed files with 496 additions and 1130 deletions

View File

@ -1,759 +0,0 @@
# ChangeLog for dev-libs/libffi
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/libffi/ChangeLog,v 1.200 2015/03/20 15:47:45 vapier Exp $
20 Mar 2015; Mike Frysinger <vapier@gentoo.org> libffi-3.1-r3.ebuild:
Drop Darwin patch as it does not apply cleanly and it is already in newer
versions #543856 by Hans de Graaff.
18 Jan 2015; Fabian Groffen <grobian@gentoo.org>
+files/libffi-3.1-darwin-x32.patch, libffi-3.1-r3.ebuild, libffi-3.2.1.ebuild,
libffi-3.2.ebuild:
Allow to compile on 32-bits Darwin, bug #536764
16 Jan 2015; Tobias Klausmann <klausman@gentoo.org>
+files/libffi-3.2.1-complex_alpha.patch, libffi-3.2.1.ebuild:
Update src/alpha/osf.S to match ffi.h
31 Dec 2014; Mike Frysinger <vapier@gentoo.org>
+files/libffi-3.2.1-o-tmpfile-eacces.patch, libffi-3.2.1.ebuild:
Workaround O_TMPFILE bugs in the system #529044 by Simon MARCHUK.
*libffi-3.2.1 (05 Dec 2014)
05 Dec 2014; William Hubbs <williamh@gentoo.org> +libffi-3.2.1.ebuild:
version bump
19 Nov 2014; Mike Frysinger <vapier@gentoo.org> libffi-3.2.ebuild:
Drop KEYWORDS until we can sort out #529044 a bit more.
*libffi-3.2 (12 Nov 2014)
12 Nov 2014; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.2.ebuild:
Version bump.
10 Aug 2014; Sergei Trofimovich <slyfox@gentoo.org> libffi-3.0.13-r1.ebuild,
libffi-3.1-r3.ebuild:
QA: drop trailing '.' from DESCRIPTION
22 Jul 2014; Samuli Suominen <ssuominen@gentoo.org> -libffi-3.1-r2.ebuild:
old
*libffi-3.1-r3 (30 May 2014)
30 May 2014; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.1-r3.ebuild,
+files/libffi-3.1-typing_error.patch:
Fix typing error in ffi.h.in (missing @@) wrt #511752 by Ryan Hill and
Patrick Lauer
29 May 2014; Samuli Suominen <ssuominen@gentoo.org> -libffi-3.1-r1.ebuild,
-libffi-3.1.ebuild:
old
*libffi-3.1-r2 (28 May 2014)
28 May 2014; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.1-r2.ebuild:
Fix output of `pkg-config --libs libffi` wrt #511726 by Michał Górny
*libffi-3.1-r1 (28 May 2014)
28 May 2014; Samuli Suominen <ssuominen@gentoo.org>
+files/libffi-3.1-execstack.patch, +libffi-3.1-r1.ebuild:
Fix execstack in libffi.so.6 wrt #511634 by Anthony Basile and Magnus Granberg
27 May 2014; Samuli Suominen <ssuominen@gentoo.org>
-files/libffi-3.0.11-x86-pic-check.patch, -libffi-3.0.11.ebuild,
-libffi-3.0.12.ebuild, -libffi-3.0.13.ebuild:
old
27 May 2014; Samuli Suominen <ssuominen@gentoo.org> libffi-3.1.ebuild:
Time to let preserve_old_lib go and rely upon FEATURES="preserved-libs" which
is enabled by default in the official package manager.
*libffi-3.1 (27 May 2014)
27 May 2014; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.1.ebuild:
Version bump.
14 May 2014; Agostino Sarubbo <ago@gentoo.org> libffi-3.0.13-r1.ebuild:
Stable for sparc, wrt bug #497760
13 May 2014; Agostino Sarubbo <ago@gentoo.org> libffi-3.0.13-r1.ebuild:
Stable for ia64, wrt bug #497760
20 Apr 2014; Agostino Sarubbo <ago@gentoo.org> libffi-3.0.13-r1.ebuild:
Stable for ppc64, wrt bug #497760
13 Apr 2014; Agostino Sarubbo <ago@gentoo.org> libffi-3.0.13-r1.ebuild:
Stable for ppc, wrt bug #497760
07 Apr 2014; Markus Meier <maekke@gentoo.org> libffi-3.0.13-r1.ebuild:
arm stable, bug #497760
05 Apr 2014; Agostino Sarubbo <ago@gentoo.org> libffi-3.0.13-r1.ebuild:
Stable for x86, wrt bug #497760
04 Apr 2014; Chema Alonso <nimiux@gentoo.org> libffi-3.0.13-r1.ebuild:
Stable for amd64 wrt bug #497760
29 Mar 2014; Matt Turner <mattst88@gentoo.org> libffi-3.0.13-r1.ebuild:
alpha stable, bug #497760.
28 Mar 2014; Jeroen Roovers <jer@gentoo.org> libffi-3.0.13-r1.ebuild:
Stable for HPPA (bug #497760).
25 Mar 2014; Mike Frysinger <vapier@gentoo.org> libffi-3.0.11.ebuild,
libffi-3.0.12.ebuild, libffi-3.0.13-r1.ebuild, libffi-3.0.13.ebuild:
Mark arm64/m68k/s390/sh stable #497760.
18 Jan 2014; Mike Frysinger <vapier@gentoo.org> libffi-3.0.13-r1.ebuild:
Add arm64 love.
13 Oct 2013; Michał Górny <mgorny@gentoo.org> libffi-3.0.13-r1.ebuild:
Explicitly call einstalldocs in multilib_src_install_all() to accomodate bug
#483304.
30 Jul 2013; Alexis Ballier <aballier@gentoo.org> libffi-3.0.13-r1.ebuild:
improve the emul-libs blocker so that it is stacked for baselibs -r2.
*libffi-3.0.13-r1 (15 Jul 2013)
15 Jul 2013; Julian Ospald <hasufell@gentoo.org> +libffi-3.0.13-r1.ebuild:
multilib conversion wrt #459072
22 May 2013; Magnus Granberg <zorry@gentoo.org>
files/libffi-3.0.13-emutramp_pax_proc.patch:
Update the emutramp_pax_proc patch with ChangeLog
18 May 2013; Magnus Granberg <zorry@gentoo.org> libffi-3.0.13.ebuild:
Did for get to run repoman commit for dev-lib/libffi
18 May 2013; Magnus Granberg <zorry@gentoo.org> libffi-3.0.13.ebuild,
+files/libffi-3.0.13-emutramp_pax_proc.patch:
Add patch to use /proc for pax mark on 3.0.13 #457194
28 Mar 2013; Mike Frysinger <vapier@gentoo.org> libffi-3.0.11.ebuild,
libffi-3.0.12.ebuild, libffi-3.0.13.ebuild:
Disable tooldir related hack that breaks --libdir usage #462814 by Thomas
Sachau.
*libffi-3.0.13 (20 Mar 2013)
20 Mar 2013; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.0.13.ebuild:
Version bump.
17 Feb 2013; Zac Medico <zmedico@gentoo.org> libffi-3.0.12.ebuild:
Add ~arm-linux keyword.
11 Feb 2013; Samuli Suominen <ssuominen@gentoo.org>
-files/libffi-3.0.9-x32.patch, -libffi-3.0.10.ebuild,
-libffi-3.0.12_rc3.ebuild:
old
*libffi-3.0.12 (11 Feb 2013)
11 Feb 2013; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.0.12.ebuild:
Version bump.
10 Feb 2013; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.12_rc3.ebuild,
metadata.xml:
Tie USE="pax_kernel" with --enable-pax_emutramp. Thanks to klondike and
blueness for advise.
*libffi-3.0.12_rc3 (09 Feb 2013)
09 Feb 2013; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.12_rc3.ebuild:
RC3 for testing, but without keywording for now.
27 Jan 2013; Fabian Groffen <grobian@gentoo.org> libffi-3.0.11.ebuild:
Unbreak Prefix bootstraps with host-provided libffi
13 Jan 2013; Mike Frysinger <vapier@gentoo.org>
+files/libffi-3.0.11-x86-pic-check.patch, libffi-3.0.11.ebuild:
Add fix from upstream for PIC compile checks #417179 by Richard Yao.
07 Dec 2012; Agostino Sarubbo <ago@gentoo.org> libffi-3.0.11.ebuild:
Stable for ppc64, wrt bug #416669
04 Oct 2012; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.11.ebuild:
Check if ${ROOT} is / or not before executing the -lffi sanity link check wrt
#437046 by Alexander Tsoy
02 Oct 2012; Fabian Groffen <grobian@gentoo.org> libffi-3.0.11.ebuild:
Fix non-fatal typo effectively disabling the link-check
29 Sep 2012; Fabian Groffen <grobian@gentoo.org> libffi-3.0.11.ebuild:
Marked ~m68k-mint, bug #433529
05 Aug 2012; Fabian Groffen <grobian@gentoo.org> libffi-3.0.11.ebuild:
Marked ~x86-freebsd
22 Jul 2012; <nixnut@gentoo.org> libffi-3.0.11.ebuild:
ppc stable #416669
08 Jul 2012; Raúl Porcel <armin76@gentoo.org> libffi-3.0.11.ebuild:
ia64/m68k/s390/sh/sparc stable wrt #416669
13 Jun 2012; Richard Yao <ryao@gentoo.org> libffi-3.0.10.ebuild,
libffi-3.0.11.ebuild:
Add epatch_user
31 May 2012; Jeroen Roovers <jer@gentoo.org> libffi-3.0.11.ebuild:
Stable for HPPA (bug #416669).
30 May 2012; Markus Meier <maekke@gentoo.org> libffi-3.0.11.ebuild:
arm stable, bug #416669
24 May 2012; Matt Turner <mattst88@gentoo.org> libffi-3.0.11.ebuild:
Stable on alpha, bug 416669. Also fixes bug 395755.
21 May 2012; Jeff Horelick <jdhore@gentoo.org> libffi-3.0.11.ebuild:
marked x86 per bug 416669
20 May 2012; Agostino Sarubbo <ago@gentoo.org> libffi-3.0.11.ebuild:
Stable for amd64, wrt bug #416669
26 Apr 2012; Alexis Ballier <aballier@gentoo.org> libffi-3.0.11.ebuild:
keyword ~amd64-fbsd
12 Apr 2012; Samuli Suominen <ssuominen@gentoo.org> -libffi-3.0.9-r2.ebuild,
-files/libffi-3.0.9-arm-oabi.patch,
-files/libffi-3.0.9-define-generic-symbols-carefully.patch,
-files/libffi-3.0.9-interix.patch, -files/libffi-3.0.9-irix.patch,
-files/libffi-3.0.9-powerpc64-darwin.patch,
-files/libffi-3.0.9-strncmp.patch, -libffi-3.0.11_rc3.ebuild:
old
*libffi-3.0.11 (12 Apr 2012)
12 Apr 2012; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.0.11.ebuild:
Version bump.
06 Apr 2012; Samuli Suominen <ssuominen@gentoo.org>
-libffi-3.0.11_rc1.ebuild, -libffi-3.0.11_rc2.ebuild,
-files/libffi-3.0.11_rc2-fix-ppc64-compile.patch:
old
*libffi-3.0.11_rc3 (06 Apr 2012)
06 Apr 2012; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.11_rc3.ebuild:
Version bump.
13 Mar 2012; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.11_rc2.ebuild,
+files/libffi-3.0.11_rc2-fix-ppc64-compile.patch:
Fix building for PowerPC64 using patch from libffi-discuss ML.
19 Feb 2012; Raúl Porcel <armin76@gentoo.org> libffi-3.0.10.ebuild:
arm/ia64/m68k/s390/sh/sparc stable wrt #387063
16 Feb 2012; Mike Frysinger <vapier@gentoo.org> libffi-3.0.9-r2.ebuild,
+files/libffi-3.0.9-x32.patch, libffi-3.0.10.ebuild,
libffi-3.0.11_rc1.ebuild, libffi-3.0.11_rc2.ebuild:
Add patch from upstream for x32 targets.
31 Jan 2012; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.10.ebuild:
ppc/ppc64 stable wrt #387063
21 Jan 2012; Tobias Klausmann <klausman@gentoo.org> libffi-3.0.10.ebuild:
Stable on alpha, bug #387063
*libffi-3.0.11_rc2 (18 Nov 2011)
18 Nov 2011; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.11_rc2.ebuild:
Version bump.
09 Nov 2011; Jeroen Roovers <jer@gentoo.org> libffi-3.0.10.ebuild:
Stable for HPPA (bug #387063).
18 Oct 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> libffi-3.0.10.ebuild:
x86 stable wrt bug #387063
14 Oct 2011; Tony Vroon <chainsaw@gentoo.org> libffi-3.0.10.ebuild:
Marked stable on AMD64 based on arch testing by Agostino "ago" Sarubbo &
Elijah "Armageddon" El Lazkani in bug #387063.
*libffi-3.0.11_rc1 (13 Oct 2011)
13 Oct 2011; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.11_rc1.ebuild:
Version bump.
06 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> -libffi-3.0.9.ebuild,
-libffi-3.0.10_rc8.ebuild, -files/libffi-3.0.10-interix.patch:
old
*libffi-3.0.10 (29 Aug 2011)
29 Aug 2011; Diego E. Pettenò <flameeyes@gentoo.org> +libffi-3.0.10.ebuild:
Version bump to 3.0.10 final (interix patch not necessary). Somehow this
lowers, rather than increase, the soversion.
21 May 2011; Naohiro Aota <naota@gentoo.org> libffi-3.0.10_rc8.ebuild:
Fix build failure bug #363275 on BSD
20 May 2011; Kacper Kowalik <xarthisius@gentoo.org> libffi-3.0.9-r2.ebuild:
ppc64 stable wrt #360465
12 May 2011; Markus Duft <mduft@gentoo.org> libffi-3.0.10_rc8.ebuild,
+files/libffi-3.0.10-interix.patch:
add patch: build fix for x86-interix (prefix)
02 May 2011; Fabian Groffen <grobian@gentoo.org> libffi-3.0.10_rc8.ebuild:
Marked ~x64-freebsd
13 Apr 2011; Brent Baude <ranger@gentoo.org> libffi-3.0.9-r2.ebuild:
Marking libffi-3.0.9-r2 ppc for bug 360465
10 Apr 2011; Raúl Porcel <armin76@gentoo.org> libffi-3.0.9-r2.ebuild:
ia64/m68k/s390/sh/sparc/x86 stable wrt #360465
10 Apr 2011; Markus Meier <maekke@gentoo.org> libffi-3.0.9-r2.ebuild:
arm stable, bug #360465
29 Mar 2011; Jeroen Roovers <jer@gentoo.org> libffi-3.0.9-r2.ebuild:
Stable for HPPA (bug #360465).
27 Mar 2011; Tobias Klausmann <klausman@gentoo.org> libffi-3.0.9-r2.ebuild:
Stable on alpha, bug #360465
25 Mar 2011; Christoph Mende <angelos@gentoo.org> libffi-3.0.9-r2.ebuild:
Stable on amd64 wrt bug #360465
*libffi-3.0.10_rc8 (25 Mar 2011)
25 Mar 2011; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.10_rc8.ebuild:
Version bump.
23 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.10_rc5.ebuild:
Detect and document broken installation of sys-devel/gcc in the build.log wrt
#354903
*libffi-3.0.10_rc5 (15 Feb 2011)
15 Feb 2011; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.10_rc5.ebuild:
Version bump.
*libffi-3.0.10_rc4 (12 Feb 2011)
12 Feb 2011; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.10_rc4.ebuild:
Version bump.
*libffi-3.0.9-r2 (04 Feb 2011)
04 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.0.9-r2.ebuild,
+files/libffi-3.0.9-strncmp.patch:
Backport upstream patch for strncmp usage bug by request from Arfrever
Frehtes Taifersar Arahesis.
06 Jan 2011; Fabian Groffen <grobian@gentoo.org> libffi-3.0.9-r1.ebuild,
+files/libffi-3.0.9-powerpc64-darwin.patch:
Add patch to allow compilation on powerpc64-*-darwin*
*libffi-3.0.9-r1 (18 Dec 2010)
18 Dec 2010; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.0.9-r1.ebuild,
+files/libffi-3.0.9-define-generic-symbols-carefully.patch:
Include upstream patch to define generic symbols carefully wrt #347636 by
Dennis Schridde.
20 Sep 2010; Raúl Porcel <armin76@gentoo.org> libffi-3.0.9.ebuild,
+files/libffi-3.0.9-arm-oabi.patch:
Add patch to fix ARM OABI, by Diego 'Flameeyes' Pettenò
<flameeyes@gentoo.org>
19 Sep 2010; Raúl Porcel <armin76@gentoo.org> libffi-3.0.9.ebuild:
s390 stable
16 Apr 2010; Brent Baude <ranger@gentoo.org> libffi-3.0.9.ebuild:
Marking libffi-3.0.9 ppc for bug 306281
22 Mar 2010; Brent Baude <ranger@gentoo.org> libffi-3.0.9.ebuild:
Marking libffi-3.0.9 ppc64 for bug 306281
16 Mar 2010; Raúl Porcel <armin76@gentoo.org> libffi-3.0.9.ebuild:
alpha/arm/ia64/m68k/sh/sparc stable wrt #306281
03 Mar 2010; Pawel Hajdan jr <phajdan.jr@gentoo.org> libffi-3.0.9.ebuild:
x86 stable wrt bug #306281
22 Feb 2010; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.9.ebuild:
amd64 stable wrt #306281
22 Feb 2010; Jeroen Roovers <jer@gentoo.org> libffi-3.0.9.ebuild:
Stable for HPPA (bug #306281).
20 Feb 2010; Jonathan Callen <abcd@gentoo.org> libffi-3.0.9.ebuild,
+files/libffi-3.0.9-interix.patch, +files/libffi-3.0.9-irix.patch:
Add patches from prefix, add prefix keywords
25 Jan 2010; Raúl Porcel <armin76@gentoo.org> libffi-3.0.9.ebuild:
Add ~m68k, thanks to kolla for testing
24 Jan 2010; Raúl Porcel <armin76@gentoo.org> libffi-3.0.9.ebuild:
Add ~ia64/~sh/~sparc wrt #298322
13 Jan 2010; Brent Baude <ranger@gentoo.org> libffi-3.0.9.ebuild:
Marking libffi-3.0.9 ~ppc64 for bug 298322
04 Jan 2010; Markus Meier <maekke@gentoo.org> libffi-3.0.9.ebuild:
add ~arm, bug #298322
03 Jan 2010; Jeroen Roovers <jer@gentoo.org> libffi-3.0.9.ebuild:
Marked ~ppc (bug #298322).
*libffi-3.0.9 (31 Dec 2009)
31 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> +libffi-3.0.9.ebuild:
Version bump.
26 Dec 2009; Jeroen Roovers <jer@gentoo.org> libffi-3.0.9_rc6.ebuild,
libffi-3.0.9_rc9.ebuild:
Marked ~hppa (bug #298322).
*libffi-3.0.9_rc9 (26 Dec 2009)
26 Dec 2009; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.9_rc9.ebuild:
Version bump.
*libffi-3.0.9_rc6 (25 Dec 2009)
25 Dec 2009; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.9_rc6.ebuild:
Version bump.
*libffi-3.0.9_rc4 (24 Dec 2009)
24 Dec 2009; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.9_rc4.ebuild, +files/libffi-3.0.9_rc4-revert_includedir.patch:
Version bump.
20 Dec 2009; Raúl Porcel <armin76@gentoo.org> libffi-3.0.8.ebuild:
m68k stable
13 Dec 2009; Raúl Porcel <armin76@gentoo.org> libffi-3.0.8.ebuild:
Add ~m68k, thanks to kolla for testing
10 Dec 2009; Raúl Porcel <armin76@gentoo.org> libffi-3.0.8.ebuild,
+files/libffi-3.0.8-arm.patch:
Steal patch from debian to make it compile on armv6/armv7
*libffi-3.0.9_rc3 (30 Oct 2009)
30 Oct 2009; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.9_rc3.ebuild:
Version bump.
*libffi-3.0.9_rc2 (27 Oct 2009)
27 Oct 2009; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.9_rc2.ebuild:
Version bump.
19 Oct 2009; Alexey Shvetsov <alexxy@gentoo.org> libffi-3.0.8.ebuild:
Add ~mips keyword
17 Oct 2009; Markus Meier <maekke@gentoo.org> metadata.xml:
remove static-libs description as it is global now
05 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.8.ebuild,
libffi-3.0.9_rc1.ebuild:
Keyword ~sparc-fbsd. Compile tested on FreeBSD-6.2-RELEASE-sparc64-64bit-ELF.
*libffi-3.0.9_rc1 (05 Oct 2009)
05 Oct 2009; Samuli Suominen <ssuominen@gentoo.org>
+libffi-3.0.9_rc1.ebuild:
Version bump.
03 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.8.ebuild:
Move dev-libs/libffi back to EAPI="0" because dev-lang/python is consuming
it.
02 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.8.ebuild,
+files/libffi-3.0.8-autoconf-2.64.patch:
Fix compability with Autoconf 2.64 wrt #287020, thanks to Mike Lundy and
Mike Frysinger.
23 Sep 2009; Alexis Ballier <aballier@gentoo.org> libffi-3.0.8.ebuild,
+files/libffi-3.0.8-fbsd.patch:
Fix detection and test on FreeBSD and keyword it.
07 Sep 2009; Raúl Porcel <armin76@gentoo.org> libffi-3.0.8.ebuild:
arm/ia64/s390/sh stable
05 Sep 2009; Brent Baude <ranger@gentoo.org> libffi-3.0.8.ebuild:
Marking libffi-3.0.8 ppc64 for bug 272675
22 Jul 2009; Tobias Klausmann <klausman@gentoo.org> libffi-3.0.8.ebuild:
Stable on alpha, bug #272675
19 Jul 2009; nixnut <nixnut@gentoo.org> libffi-3.0.8.ebuild:
ppc stable #272673
18 Jul 2009; Jeroen Roovers <jer@gentoo.org> libffi-3.0.8.ebuild:
Stable for HPPA (bug #272675).
11 Jun 2009; Markus Meier <maekke@gentoo.org> libffi-3.0.8.ebuild:
amd64 stable, bug #272675
10 Jun 2009; Christian Faulhammer <fauli@gentoo.org> libffi-3.0.8.ebuild:
stable x86, bug 272675
05 Jun 2009; Ferris McCormick <fmccor@gentoo.org> libffi-3.0.8.ebuild:
Sparc stable, part of Bug #272675.
05 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.8.ebuild:
Block <dev-libs/g-wrap-1.9.11 because they ship a copy of this library.
04 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.8.ebuild:
Keyword ~ppc/~ppc64 wrt #272046, thanks to Luca Barbato for testing.
03 Jun 2009; Raúl Porcel <armin76@gentoo.org> libffi-3.0.8.ebuild:
Add ~arm/~ia64/~s390/~sh wrt #272046
03 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> libffi-3.0.8.ebuild:
Keyword ~alpha wrt #272046, thanks to Tobias Klausmann for testing.
02 Jun 2009; Jeroen Roovers <jer@gentoo.org> libffi-3.0.8.ebuild:
Marked ~hppa (bug #272046).
01 Jun 2009; Ferris McCormick <fmccor@gentoo.org> libffi-3.0.8.ebuild:
Add sparc for testing, part of Bug #272046.
01 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> -libffi-3.0.5.ebuild,
-libffi-3.0.6.ebuild, libffi-3.0.8.ebuild, metadata.xml:
Only build static libs if USE flag is defined.
*libffi-3.0.8 (24 Dec 2008)
24 Dec 2008; Stephanie Lockwood-Childs <wormo@gentoo.org>
+libffi-3.0.8.ebuild:
version bump requested by Matteo Modesti (bug #252344)
*libffi-3.0.6 (02 Sep 2008)
02 Sep 2008; Marijn Schouten <hkBst@gentoo.org> +libffi-3.0.6.ebuild:
bump
29 Jun 2008; Marijn Schouten <hkBst@gentoo.org> libffi-3.0.5.ebuild:
don't patch anymore, move warning to pkg_setup
13 Jun 2008; Samuli Suominen <ssuominen@gentoo.org>
+files/libffi-3.0.5-includedir.patch, libffi-3.0.5.ebuild:
Fix includedir. USE flag test for dejagnu which is required for make
check.
*libffi-3.0.5 (13 Jun 2008)
13 Jun 2008; Samuli Suominen <ssuominen@gentoo.org>
-files/libffi-soversion.dpatch, -files/libffi-without-libgcj.dpatch,
+libffi-3.0.5.ebuild, -libffi-3.4.1.ebuild, -libffi-3.4.1-r1.ebuild,
-libffi-3.4.3.ebuild:
Version bump for testing wrt #163724, thanks to Marijn Schouten. Remove
old versions which came from GCC 3.4.x.
03 Jun 2008; Michael Sterrett <mr_bones_@gentoo.org> libffi-3.4.1.ebuild,
libffi-3.4.1-r1.ebuild, libffi-3.4.3.ebuild:
remove reference to app-admin/eselect-compiler which has been removed
27 Dec 2007; Christian Heim <phreak@gentoo.org> metadata.xml:
Fixing the maintainer. It's supposed to be maintainer-needed.
05 Dec 2007; Michael Sterrett <mr_bones_@gentoo.org> -libffi-3.3.5.ebuild:
remove old, dep-broken version
13 Nov 2007; Raúl Porcel <armin76@gentoo.org> libffi-3.3.5.ebuild,
libffi-3.4.1-r1.ebuild:
Drop unneeded ~alpha keyword
11 May 2007; Thilo Bangert <bangert@gentoo.org> metadata.xml:
fix herd
12 Mar 2007; Raúl Porcel <armin76@gentoo.org> libffi-3.4.3.ebuild:
x86 stable
03 Mar 2007; Marius Mauch <genone@gentoo.org> libffi-3.3.5.ebuild:
Replacing einfo with elog
06 Jan 2007; Danny van Dyk <kugelfang@gentoo.org> -libffi-1.20.ebuild:
QA: Removed unused versions.
05 Nov 2006; Piotr Jaroszyński <peper@gentoo.org> libffi-3.4.1.ebuild:
Fix multilib. Thanks to David Leverton <u01drl3@abdn.ac.uk> in bug #154065.
14 Aug 2006; Christian Heim <phreak@gentoo.org> libffi-3.3.5.ebuild,
libffi-3.4.1.ebuild, libffi-3.4.1-r1.ebuild, libffi-3.4.3.ebuild:
Switch default ordering of gcc-config and eselect-compiler to work around
portage bug.
13 Aug 2006; Markus Rothe <corsair@gentoo.org> libffi-3.4.1-r1.ebuild,
libffi-3.4.3.ebuild:
Dropped ppc64/~ppc64 keywords
02 Aug 2006; Andrej Kacian <ticho@gentoo.org> libffi-3.4.1-r1.ebuild:
Stable on x86, bug #105020.
01 Aug 2006; Andrej Kacian <ticho@gentoo.org> libffi-3.4.3.ebuild:
Added ~x86, bug #105020.
27 Jul 2006; Fabian Groffen <grobian@gentoo.org> libffi-3.3.5.ebuild,
libffi-3.4.1.ebuild, libffi-3.4.1-r1.ebuild, libffi-3.4.3.ebuild:
QA fixes for bug #141378: build is not really used, so remove its trails.
Remove gnustep as maintainer, gnustep-base is moving away from it.
06 Jun 2006; Jeremy Huddleston <eradicator@gentoo.org>
libffi-3.3.5.ebuild, libffi-3.4.1.ebuild, libffi-3.4.1-r1.ebuild,
libffi-3.4.3.ebuild:
Updated DEPEND to accept eselect-compiler.
08 Jan 2006; Michael Hanselmann <hansmi@gentoo.org> metadata.xml:
Remove retiring dev from metadata.
05 Jan 2006; Gustavo Zacarias <gustavoz@gentoo.org> libffi-3.4.3.ebuild:
Stable on sparc
22 Dec 2005; Joshua Nichols <nichoj@gentoo.org> libffi-3.4.1.ebuild:
Fixed multilib-strict violation (bug #74949).
21 Dec 2005; Seemant Kulleen <seemant@gentoo.org> libffi-3.3.5.ebuild,
libffi-3.4.1.ebuild, libffi-3.4.1-r1.ebuild, libffi-3.4.3.ebuild:
Fix QA violation of awk in the global scope. Change to versionator eclass
instead. Thanks to: Christian Heim in bug #108388
22 May 2005; Jason Wever <weeve@gentoo.org> libffi-3.4.3.ebuild:
Added ~sparc keyword.
06 May 2005; Sven Wegener <swegener@gentoo.org> libffi-3.4.1-r1.ebuild,
libffi-3.4.3.ebuild:
Removed * postfix from <, <=, >= and > dependencies.
09 Apr 2005; Armando Di Cianno <fafhrd@gentoo.org> -libffi-3.3.3.ebuild,
-libffi-3.3.3-r1.ebuild, -libffi-3.3.4.ebuild, libffi-3.4.1-r1.ebuild:
Pruning old ebuilds that are no longer needed.
06 Apr 2005; Markus Rothe <corsair@gentoo.org> libffi-3.4.3.ebuild:
Stable on ppc64
06 Apr 2005; <kloeri@gentoo.org> libffi-3.3.3-r1.ebuild,
libffi-3.3.5.ebuild:
~alpha cleanup.
04 Apr 2005; Michael Hanselmann <hansmi@gentoo.org> libffi-3.4.3.ebuild:
Stable on ppc.
04 Apr 2005; Gustavo Zacarias <gustavoz@gentoo.org> libffi-3.3.4.ebuild,
libffi-3.3.5.ebuild:
3.3.5 to sparc stable, 3.3.4 removed ~sparc for cleanup
04 Apr 2005; Gustavo Zacarias <gustavoz@gentoo.org> libffi-3.3.5.ebuild:
Stable on sparc
*libffi-3.3.5 (14 Mar 2005)
14 Mar 2005; Eric Shattow <jnc@gentoo.org> +libffi-3.3.5.ebuild:
Version Bump (interim, closes #80281).
12 Mar 2005; Eric Shattow <jnc@gentoo.org> libffi-3.3.4.ebuild:
quasi-stable on x86 (fixes broken dependency tracking in stable arch)
05 Mar 2005; Markus Rothe <corsair@gentoo.org> libffi-3.4.3.ebuild:
Added ~ppc64 to KEYWORDS and don't use multilib on ppc64; bug #72258
*libffi-3.4.3 (03 Dec 2004)
03 Dec 2004; Armando Di Cianno <fafhrd@gentoo.org> +libffi-3.4.3.ebuild:
Version bump to match gcc-3.4.3; hopefully this will be the last libffi of
this type/in this series that I make - >=gcc-3.4.3-r1 should support libffi
with gcj and objc now
23 Nov 2004; Tom Gall <tgall@gentoo.org>
libffi-3.4.1-r1.ebuild:
added ~ppc64
23 Nov 2004; Jeremy Huddleston <eradicator@gentoo.org>
libffi-3.4.1.ebuild:
Stable amd64... bug #68857.
31 Oct 2004; <kloeri@gentoo.org> libffi-3.3.3-r1.ebuild:
~alpha keyword.
24 Oct 2004; Jason Wever <weeve@gentoo.org> libffi-3.3.4.ebuild:
Added ~sparc keyword wrt bug #68729.
24 Oct 2004; Armando Di Cianno <fafhrd@gentoo.org> libffi-3.3.3-r1.ebuild,
libffi-3.3.4.ebuild:
Making gcc depends more explicit; libffi really needs to be installed
alongside gcc on of these days...
09 Oct 2004; David Holm <dholm@gentoo.org> libffi-3.4.1-r1.ebuild:
Added to ~ppc.
*libffi-3.3.4 (25 Sep 2004)
25 Sep 2004; Armando Di Cianno <fafhrd@gentoo.org> +libffi-3.3.4.ebuild:
New version to complement gcc-3.3.4.
*libffi-3.3.3-r1 (22 Sep 2004)
22 Sep 2004; Armando Di Cianno <fafhrd@gentoo.org>
+files/libffi-soversion.dpatch, +files/libffi-without-libgcj.dpatch,
+libffi-3.3.3-r1.ebuild, +libffi-3.4.1-r1.ebuild:
Updated,new 3.3.3-r1 and 3.4.1-r1 for ~x86; 3.4.1-r1 now applies patches that
allow building without turning on libgcj as well.
*libffi-3.3.3 (27 Aug 2004)
27 Aug 2004; Armando Di Cianno <fafhrd@gentoo.org> +libffi-3.3.3.ebuild,
libffi-3.4.1.ebuild:
Added specific as-is type license for libffi; added libffi-3.3.3 for x86; set
HOMEPAGE to more proper url.
27 Aug 2004; Armando Di Cianno <fafhrd@gentoo.org> libffi-3.4.1.ebuild:
Added email address next to comment I had previously made in file.
14 Aug 2004; Sven Wegener <swegener@gentoo.org> libffi-3.4.1.ebuild:
Fixed CVS Header.
*libffi-3.4.1 (17 Jul 2004)
17 Jul 2004; Travis Tilley <lv@gentoo.org> +libffi-3.4.1.ebuild:
added an ebuild for the libffi 2.0 beta from the gcc 3.4.1 tarball. keyworded
~amd64
01 Jul 2004; Jeremy Huddleston <eradicator@gentoo.org> libffi-1.20.ebuild:
virtual/glibc -> virtual/libc
18 Mar 2004; David Holm <dholm@gentoo.org> libffi-1.20.ebuild:
Added to ~ppc.
14 Mar 2004; Michael Sterrett <mr_bones_@gentoo.org> libffi-1.20.ebuild:
Don't assign default to S; header fix
*libffi-1.20 (13 Feb 2003)
12 Jul 2003; Daniel Ahlberg <aliz@gentoo.org> :
Added missing changelog entry.
06 Dec 2002; Rodney Rees <manson@gentoo.org> : changed sparc ~sparc keywords
*libffi-0.20 ( 10 Feb 2002 )
10 Feb 2002; Karl Trygve Kalleberg <karltk@gentoo.org> ChangeLog files/digest-libffi-0.20 libffi-0.20:
The libffi library provides a portable, high level programming interface to
various calling conventions. This allows a programmer to call any function
specified by a call interface description at run-time.
Ffi stands for Foreign Function Interface. A foreign function interface is
the popular name for the interface that allows code written in one language
to call code written in another language. The libffi library really only
provides the lowest, machine dependent layer of a fully featured foreign
function interface. A layer must exist above libffi that handles type
conversions for values passed between the two languages.

View File

@ -1,16 +1,2 @@
AUX libffi-3.0.13-emutramp_pax_proc.patch 911 SHA256 955aa3d87522cb220133fa853bd3a5a7af1fe7cf5cc6b9eb74ffffb9ac563aba SHA512 402712b21feec0f162758adad630ecc588596eaebd2e79bb86802f313e102b8ef6d08eca0580a1aae25dabec3e018c499e2ce1960edc6af9182f67cd8cc9b0e1 WHIRLPOOL 22f76ca6f909c80228958115a8db37fbe5f12e291cdbc1fad672a0903c54a7918e2cee37fdc263e9c350f3c79a7870cc8f7a05789668a8dc87cb8434a6e20f9c
AUX libffi-3.1-darwin-x32.patch 606 SHA256 419007aba26be807a25e6f34d319225458e3febc75c3f3d0c85093ded63e3cb2 SHA512 909e4c45f124d6a9d4a0b2b97fdcbf0451a15c11c3da581fc8571d4f4f0857306bbfddf682bbe0441f0c5c84a8489e4a79a792883bfe440224cf672567bf0a24 WHIRLPOOL 9f749489499e8e9fa7712ae4111424c47c695cd5ee7b6480a8a2f5cd638d8d95c000e16e81eb13603bd842c2d50d2d0c60480d519960c55b652867fd6cb95cde
AUX libffi-3.1-execstack.patch 277 SHA256 55e95096d8b2bd82188c62b1316c602738336c0a4b58ccce503936dfc436b1d9 SHA512 1365cb102e6ffacd89b399243cd89ddb29259e373d16fd500d9d98bd40edbd0d79b63df6fb9464247cc2f11628d5c692a25f1c6d9cef19feb857e1232c154d4f WHIRLPOOL 597c3cdb8a28dcc15d724fa4d184956bcd4118803070ba63c1d914eb1a3b4c9720f68404a05ba4ad7ad83714f79ee7856bb8921886511bc7d35b39f33b4b41f0
AUX libffi-3.1-typing_error.patch 350 SHA256 2e134e7f347f392499ec9128b220cff467919dfc048922d72689816d9f40ea95 SHA512 6be05ec604da587ded9d50ba57153b7ca24ee52dbed132d08f8653032153d377b2e399b58010e3c84e2106f077696a0cc9507018687af2082aa5ce055ba5fa07 WHIRLPOOL e8613594118774abaa2d79b0cdcbfd57d1c3ca275543423cec70b368e604c78bc7162d582a5b654b378b60a1d765a12b418bd10f8a8693ccbc3e7fdf225be216
AUX libffi-3.2.1-complex_alpha.patch 601 SHA256 5653822db3b2338f6b7c63107868d20665a200f139616476fc1411ae76283fa5 SHA512 66890bf241236f08e0e726c820e2ff82df6071c1a3b25aa4f3f005b6431b94ec5a5f730db56de82c006e26415d72fe665d6ced37567bcdec6d84357faeb24bec WHIRLPOOL 1e020a6477eb137f5579de73a76a021eb2444a1223ef1e7b50460cbd92643c841429993d08517b7297b50f7d10aa4e5446f23ac1185d18712a5d28081d35eb74
AUX libffi-3.2.1-o-tmpfile-eacces.patch 660 SHA256 655ed8d1c6ff1f48d69f28f3393e84fe53e581504f55cfa05b1914ed97be7463 SHA512 0887063ce1d812c31a34d662f852cf2944e008f2f60bd07941572f9032861e749968b090686e0d788f7cc3c5c8f1ed2388418ff000c42fd2d592f9837e782f65 WHIRLPOOL 72305d87d8a96542264c9b4211f14744fd980a29c9d63d78919211ec0d5a027973e9825777a79980c4ec22ed59319c3230780e60746ac860ce5a405b35351659
DIST libffi-3.0.13.tar.gz 845747 SHA256 1dddde1400c3bcb7749d398071af88c3e4754058d2d4c0b3696c2f82dc5cf11c SHA512 fc47f5d25197c631754efe05a349edb556d072807ecef19b41f17c1a8f39c95221be64926fbd05b1f8439181df1ddff8fc01462ce3a26005b75159ddc27e6f6a WHIRLPOOL d5b14d48a7b35f7349ec938d0deac62db7022ac4d611ab13bc7a6a2766a47e210fc1663fc8c6d7ee48d421c06b66f558010829ac2c215620c76d0bf7650e1308
DIST libffi-3.1.tar.gz 937214 SHA256 97feeeadca5e21870fa4433bc953d1b3af3f698d5df8a428f68b73cd60aef6eb SHA512 8994973d75facf5ad928c270e17b1a56e24d1543af75b93731a0048e747df27e4190a736b6dc2dca7d43de1d7e88891220304802c10fcccdcebee9c9ffd3d1b9 WHIRLPOOL 19c08cffd39c998fcd762b1e3767b4fd86915427226833411302bebd2d5bcf93d515e6df4a4cab11327595d3966e46442e457fbe09ae986b58bdfb2bb6adb913
DIST libffi-3.2.1.tar.gz 940837 SHA256 d06ebb8e1d9a22d19e38d63fdb83954253f39bedc5d46232a05645685722ca37 SHA512 980ca30a8d76f963fca722432b1fe5af77d7a4e4d2eac5144fbc5374d4c596609a293440573f4294207e1bdd9fda80ad1e1cafb2ffb543df5a275bc3bd546483 WHIRLPOOL b9d3c86e347029fa9f03fd3813405cc731099812ad6186bd4d2ea646354383803c90912b20e1804a6b7fc12719403b3c0c3b800bdbcab564a2c93fcb4fd722ad
DIST libffi-3.2.tar.gz 940691 SHA256 6b2680fbf6ae9c2381d381248705857de22e05bae191889298f8e6bfb2ded4ef SHA512 fed5f6eec86144608966857f54bd69a5faa43427f27bc9178ebe2c7a1cecf925c20dbd6df07a207ae469842874efcf5b99fb7e09db59cbd92ebfc0a7e1bb62b7 WHIRLPOOL db7491bc5914eb6691aa366677c63af51979453330373251b1043b53163d1b56dbed65ba23c9f5047257e476e0d216045a06faa346790987047854ae1d04361d
EBUILD libffi-3.0.13-r1.ebuild 2182 SHA256 a0ac517ad1fb280a3e8a4623456733b3ce898fa4f8e410fccad91f34b748a711 SHA512 7640261bdbc6c05a2ef48464aabbd8151c8b37a052b4b0e405520c56b9515d039e8de6969d91a5162faeea0005fe154f40eb32919da4b1655677fe507da81031 WHIRLPOOL 690aa7fab323bd5c0264533576fa4066fcb4bf3b740d5ce7cf51b318f12955c8fd4acf8b8da4cfa1bc1d0d94524cc5b37ef3d40e974276dcace3f5226748227b
EBUILD libffi-3.1-r3.ebuild 2199 SHA256 c87bbca081c72a1c6619bd7b3bbb7dec76c3173d4200423a768c50f8fb8ecb2b SHA512 3cc6f6eca41a827145fbddb95cff8f8bf9d740d572c4548647c5e5defa862dc70cfc40c547bf9afb51c53f76e0f1655123f8f1602cf5d6f67c38a4ca0077c236 WHIRLPOOL 82f8dfeb5d378b2fde83e427599b1ad2dd539bd93d13bbf54101d21d7231033875b4de555556c81e8383b6a3e54fbe9c0f6ff9c9e259423645371d2616553d18
EBUILD libffi-3.2.1.ebuild 2143 SHA256 eac917c373ef320474016b89c56853a4d2dd3c58c0b7c07cea7353330759a146 SHA512 2ed1030b949343f1cbf87974b3dd9786171313186dbda7f417f571cc5f609d41704ee0a7e6cf87771ad108d64b17713d2f86f3afbd9c90ae0e8f2c96c0f03493 WHIRLPOOL fd0b280b65a296d07d585ef698546e78562f5ca2d180740cd6adb16e997202f7f9691c57dd22b400af2dfd4bd2e3cd3502bddd103e2b7712f21106c218104909
EBUILD libffi-3.2.ebuild 2084 SHA256 bcf466ee82c0bebab4b9f5e0b189bf5ad9a878e6998d88d9bf50431dfc337952 SHA512 19682bf7fa101e00b2c276d90d6b7606e12f92bf21f768244fbb82cbd47b0f1a16ae70e6810af2073c56874c408e58e0631b1d6db44a7a828b06bed539a8f339 WHIRLPOOL fe86138074cc8fa00da097fb0426a337730b23c4919274f6408cc668217db3a6869d2164dce170d2252419062714313c3fbd9781235055b730f177efc18a022e
MISC ChangeLog 27182 SHA256 b643eb3993bbd864daf849482c0c2e58133468cfb4efd5b2ccc0170ba9d123bf SHA512 a00480e9d37cf03bcdaf45b43199098349b369580d9cb9eb23c4fab135440a55e47a635255bfcccd9e3cd0be6336b9275a79ecb93ee4177b2587112b09a259db WHIRLPOOL 94783d36d7ba7f246013f435c4c43d84b0438be0d69d9d6fcfc899a9601641baefdee4015872f26fcb10610a95ef398ed6ddeaf99787683c41cc5b523ec09449
MISC metadata.xml 1768 SHA256 1bb92578368c006819d0cd5e1a94d32cffca87ddef8d571c29b483bedddc9b6e SHA512 2291c051ce2cb5c31989af68a705c0f8ce8d6ff23f2a66f839463a56a20454a6af276c5afc75687919e14fa614862356618e44c88415ff9884725e6e6db161bc WHIRLPOOL 7da7a437bf11dfcd5b5a8fbb067463ceb588fe83c1db0d15253293a955999d5dc65754918c73840a9a5020f86d1b6f1c9f8d127f4e1519594bc0678742727d45
DIST libffi-3.3.tar.gz 1305466 BLAKE2B cddc40729a30a9bd34d675809f51f8d1b4ccaffa54bc6dd6f7e965f4e260edd34754719f9f6247c8957aeb7cf154d56ce1fe16a54c3f1ad39afbebdf41d23caa SHA512 61513801a156f11420f541d325de697131846487122d6bdcf5491b18b4da788589f5c0bb07e88e396495d3be5830d74e9135595e2b8ddbfe95c448d8597fbd6f
DIST libffi-3.4.2.tar.gz 1351355 BLAKE2B a8137bc895b819f949fd7705e405be627219c6d1fdef280253330f7407d4a548bb057d7bb0e9225d1767d42f9bf5f0ab3c455db1c3470d7cc876bb7b7d55d308 SHA512 31bad35251bf5c0adb998c88ff065085ca6105cf22071b9bd4b5d5d69db4fadf16cadeec9baca944c4bb97b619b035bb8279de8794b922531fddeb0779eb7fb1

View File

@ -1,37 +0,0 @@
2013-05-22 Magnus Granberg <zorry@gentoo.org>
#457194
* src/closuer.c (emutramp_enabled_check): Check with /proc.
--- a/src/closures.c 2013-03-17 23:27:11.000000000 +0100
+++ b/src/closures.c 2013-04-29 23:26:02.279022022 +0200
@@ -181,10 +181,26 @@ static int emutramp_enabled = -1;
static int
emutramp_enabled_check (void)
{
- if (getenv ("FFI_DISABLE_EMUTRAMP") == NULL)
- return 1;
- else
+ char *buf = NULL;
+ size_t len = 0;
+ FILE *f;
+ int ret;
+ f = fopen ("/proc/self/status", "r");
+ if (f == NULL)
return 0;
+ ret = 0;
+
+ while (getline (&buf, &len, f) != -1)
+ if (!strncmp (buf, "PaX:", 4))
+ {
+ char emutramp;
+ if (sscanf (buf, "%*s %*c%c", &emutramp) == 1)
+ ret = (emutramp == 'E');
+ break;
+ }
+ free (buf);
+ fclose (f);
+ return ret;
}
#define is_emutramp_enabled() (emutramp_enabled >= 0 ? emutramp_enabled \

View File

@ -1,22 +0,0 @@
https://bugs.gentoo.org/show_bug.cgi?id=513428
https://bugs.gentoo.org/show_bug.cgi?id=536764
https://trac.macports.org/ticket/44170
--- libffi-3.2.1/src/x86/win32.S
+++ libffi-3.2.1/src/x86/win32.S
@@ -1184,7 +1184,6 @@
#if defined(X86_WIN32) && !defined(__OS2__)
.section .eh_frame,"w"
-#endif
.Lframe1:
.LSCIE1:
.long .LECIE1-.LASCIE1 /* Length of Common Information Entry */
@@ -1343,6 +1342,7 @@
/* End of DW_CFA_xxx CFI instructions. */
.align 4
.LEFDE5:
+#endif /* defined(X86_WIN32) && !defined(__OS2__), for the eh_frame */
#endif /* !_MSC_VER */

View File

@ -1,12 +0,0 @@
http://bugs.gentoo.org/511634
http://sourceware.org/ml/libffi-discuss/2014/msg00058.html
--- src/x86/win32.S
+++ src/x86/win32.S
@@ -1304,3 +1304,6 @@
#endif /* !_MSC_VER */
+#if defined __ELF__ && defined __linux__
+ .section .note.GNU-stack,"",@progbits
+#endif

View File

@ -1,14 +0,0 @@
http://bugs.gentoo.org/511752
http://sourceware.org/ml/libffi-discuss/2014/msg00059.html
--- include/ffi.h.in
+++ include/ffi.h.in
@@ -221,7 +221,7 @@ typedef struct {
#endif
} ffi_cif;
-#if HAVE_LONG_DOUBLE_VARIANT
+#if @HAVE_LONG_DOUBLE_VARIANT@
/* Used to adjust size/alignment of ffi types. */
void ffi_prep_types (ffi_abi abi);
# endif

View File

@ -1,20 +0,0 @@
--- src/alpha/osf.S.orig 2015-01-16 10:46:15.000000000 +0100
+++ src/alpha/osf.S 2015-01-16 10:46:24.000000000 +0100
@@ -279,6 +279,7 @@
.gprel32 $load_64 # FFI_TYPE_SINT64
.gprel32 $load_none # FFI_TYPE_STRUCT
.gprel32 $load_64 # FFI_TYPE_POINTER
+ .gprel32 $load_none # FFI_TYPE_COMPLEX
/* Assert that the table above is in sync with ffi.h. */
@@ -294,7 +295,8 @@
|| FFI_TYPE_SINT64 != 12 \
|| FFI_TYPE_STRUCT != 13 \
|| FFI_TYPE_POINTER != 14 \
- || FFI_TYPE_LAST != 14
+ || FFI_TYPE_COMPLEX != 15 \
+ || FFI_TYPE_LAST != 15
#error "osf.S out of sync with ffi.h"
#endif

View File

@ -0,0 +1,33 @@
https://bugs.gentoo.org/753299
--- a/testsuite/lib/libffi.exp
+++ b/testsuite/lib/libffi.exp
@@ -287,9 +287,6 @@ proc libffi-init { args } {
verbose "libffi $blddirffi"
# Which compiler are we building with?
- set tmp [grep "$blddirffi/config.log" "^ax_cv_c_compiler_vendor.*$"]
- regexp -- {^[^=]*=(.*)$} $tmp nil compiler_vendor
-
if { [string match $compiler_vendor "gnu"] } {
set gccdir [lookfor_file $tool_root_dir gcc/libgcc.a]
if {$gccdir != ""} {
--- a/configure.ac
+++ b/configure.ac
@@ -59,6 +59,7 @@ fi
cat > local.exp <<EOF
set CC_FOR_TARGET "$CC"
set CXX_FOR_TARGET "$CXX"
+set compiler_vendor "$ax_cv_c_compiler_vendor"
EOF
AM_MAINTAINER_MODE
--- a/configure
+++ b/configure
@@ -17402,6 +17402,7 @@ fi
cat > local.exp <<EOF
set CC_FOR_TARGET "$CC"
set CXX_FOR_TARGET "$CXX"
+set compiler_vendor "$ax_cv_c_compiler_vendor"
EOF

View File

@ -0,0 +1,28 @@
From 6663047f56c2932a6b10a790f4ac6666dd181326 Mon Sep 17 00:00:00 2001
From: Anthony Green <green@moxielogic.com>
Date: Fri, 29 Nov 2019 07:00:35 -0500
Subject: [PATCH] Address platforms with no __int128.
---
src/powerpc/ffi_linux64.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/powerpc/ffi_linux64.c b/src/powerpc/ffi_linux64.c
index de0d033..7364770 100644
--- a/src/powerpc/ffi_linux64.c
+++ b/src/powerpc/ffi_linux64.c
@@ -547,9 +547,9 @@ ffi_prep_args64 (extended_cif *ecif, unsigned long *const stack)
if (next_arg.ul == gpr_end.ul)
next_arg.ul = rest.ul;
if (vecarg_count < NUM_VEC_ARG_REGISTERS64 && i < nfixedargs)
- *vec_base.f128++ = **p_argv.f128;
+ memcpy (vec_base.f128++, *p_argv.f128, sizeof (float128));
else
- *next_arg.f128 = **p_argv.f128;
+ memcpy (next_arg.f128, *p_argv.f128, sizeof (float128));
if (++next_arg.f128 == gpr_end.f128)
next_arg.f128 = rest.f128;
vecarg_count++;
--
2.26.0

View File

@ -0,0 +1,42 @@
From e50b9ef8b910fa642ef158f6642e60d54d7ad740 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 7 Dec 2019 02:34:14 -0800
Subject: [PATCH] powerpc64: Use memcpy to help platforms with no __int128.
(#534)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/powerpc/ffi_linux64.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/powerpc/ffi_linux64.c b/src/powerpc/ffi_linux64.c
index 7364770..4d50878 100644
--- a/src/powerpc/ffi_linux64.c
+++ b/src/powerpc/ffi_linux64.c
@@ -680,9 +680,9 @@ ffi_prep_args64 (extended_cif *ecif, unsigned long *const stack)
{
if (vecarg_count < NUM_VEC_ARG_REGISTERS64
&& i < nfixedargs)
- *vec_base.f128++ = *arg.f128++;
+ memcpy (vec_base.f128++, arg.f128, sizeof (float128));
else
- *next_arg.f128 = *arg.f128++;
+ memcpy (next_arg.f128, arg.f128++, sizeof (float128));
if (++next_arg.f128 == gpr_end.f128)
next_arg.f128 = rest.f128;
vecarg_count++;
@@ -986,9 +986,9 @@ ffi_closure_helper_LINUX64 (ffi_cif *cif,
do
{
if (pvec < end_pvec && i < nfixedargs)
- *to.f128 = *pvec++;
+ memcpy (to.f128, pvec++, sizeof (float128));
else
- *to.f128 = *from.f128;
+ memcpy (to.f128, from.f128, sizeof (float128));
to.f128++;
from.f128++;
}
--
2.26.0

View File

@ -0,0 +1,39 @@
https://bugs.gentoo.org/701128
From 2138adb2a5b6a0bc2fe3518e0645eacc89b6f392 Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <slyfox@gentoo.org>
Date: Thu, 28 Nov 2019 00:02:42 +0000
Subject: [PATCH] powerpc: fix build failure on power7 and older
Build failure looks as:
```
libtool: compile: powerpc-unknown-linux-gnu-gcc \
-O2 -mcpu=powerpc -mtune=powerpc -pipe ... -c src/powerpc/ffi.c ...
In file included from src/powerpc/ffi.c:33:
src/powerpc/ffi_powerpc.h:65:9: error: '__int128' is not supported on this target
65 | typedef __int128 float128;
| ^~~~~~~~
```
The fix avoids using __int128 in favour of aligned char[16].
Closes: https://github.com/libffi/libffi/issues/531
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
---
src/powerpc/ffi_powerpc.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/src/powerpc/ffi_powerpc.h
+++ b/src/powerpc/ffi_powerpc.h
@@ -62,7 +62,7 @@ typedef _Float128 float128;
#elif defined(__FLOAT128__)
typedef __float128 float128;
#else
-typedef __int128 float128;
+typedef char float128[16] __attribute__((aligned(16)));
#endif
void FFI_HIDDEN ffi_closure_SYSV (void);
--
2.24.0

View File

@ -0,0 +1,63 @@
From 4f9e20ac51ce13d46fed3c869e1deb6d9bb89444 Mon Sep 17 00:00:00 2001
From: Andrew Geissler <geissonator@users.noreply.github.com>
Date: Fri, 1 May 2020 06:58:30 -0500
Subject: [PATCH] ffi_powerpc.h: fix build failure with powerpc7 (#561)
This is a patch pulled down from the following:
https://github.com/buildroot/buildroot/blob/78926f610b1411b03464152472fd430012deb9ac/package/libffi/0004-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch
This issue is being hit on OpenBMC code when pulling the latest
libffi tag and building on a P8 ppc64le machine. I verified this
patch fixes the issue we are seeing.
Below is the original commit message:
Sicne commit 73dd43afc8a447ba98ea02e9aad4c6898dc77fb0, build on powerpc7
fails on:
In file included from ../src/powerpc/ffi.c:33:0:
../src/powerpc/ffi_powerpc.h:61:9: error: '_Float128' is not supported on this target
typedef _Float128 float128;
^~~~~~~~~
Fix this build failure by checking for __HAVE_FLOAT128 before using
_Float128, as _Float128 is enabled only on specific conditions, see
output/host/powerpc64-buildroot-linux-gnu/sysroot/usr/include/bits/floatn.h:
/* Defined to 1 if the current compiler invocation provides a
floating-point type with the IEEE 754 binary128 format, and this glibc
includes corresponding *f128 interfaces for it. */
#if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \
&& defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH
# define __HAVE_FLOAT128 1
#else
# define __HAVE_FLOAT128 0
#endif
Fixes:
- http://autobuild.buildroot.org/results/5c9dd8fb3b6a128882b6250f197c80232d8a3b53
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Co-authored-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
src/powerpc/ffi_powerpc.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/powerpc/ffi_powerpc.h b/src/powerpc/ffi_powerpc.h
index 8e2f2f0..960a5c4 100644
--- a/src/powerpc/ffi_powerpc.h
+++ b/src/powerpc/ffi_powerpc.h
@@ -57,7 +57,7 @@ typedef union
double d;
} ffi_dblfl;
-#if defined(__FLOAT128_TYPE__)
+#if defined(__FLOAT128_TYPE__) && defined(__HAVE_FLOAT128)
typedef _Float128 float128;
#elif defined(__FLOAT128__)
typedef __float128 float128;
--
2.27.0

View File

@ -0,0 +1,53 @@
From 4d6d2866ae43e55325e8ee96561221804602cd7a Mon Sep 17 00:00:00 2001
From: Samuel Holland <samuel@sholland.org>
Date: Fri, 21 Feb 2020 21:06:15 -0600
Subject: [PATCH] Update powerpc sysv assembly for ffi_powerpc.h changes (#541)
Some of the flag bits were moved when adding powerpc64 vector support.
Fixes #536
---
src/powerpc/sysv.S | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/src/powerpc/sysv.S b/src/powerpc/sysv.S
index 1474ce7..df97734 100644
--- a/src/powerpc/sysv.S
+++ b/src/powerpc/sysv.S
@@ -104,17 +104,16 @@ ENTRY(ffi_call_SYSV)
bctrl
/* Now, deal with the return value. */
- mtcrf 0x01,%r31 /* cr7 */
+ mtcrf 0x03,%r31 /* cr6-cr7 */
bt- 31,L(small_struct_return_value)
bt- 30,L(done_return_value)
#ifndef __NO_FPRS__
bt- 29,L(fp_return_value)
#endif
stw %r3,0(%r30)
- bf+ 28,L(done_return_value)
+ bf+ 27,L(done_return_value)
stw %r4,4(%r30)
- mtcrf 0x02,%r31 /* cr6 */
- bf 27,L(done_return_value)
+ bf 26,L(done_return_value)
stw %r5,8(%r30)
stw %r6,12(%r30)
/* Fall through... */
@@ -145,10 +144,9 @@ L(done_return_value):
#ifndef __NO_FPRS__
L(fp_return_value):
.cfi_restore_state
- bf 28,L(float_return_value)
+ bf 27,L(float_return_value)
stfd %f1,0(%r30)
- mtcrf 0x02,%r31 /* cr6 */
- bf 27,L(done_return_value)
+ bf 26,L(done_return_value)
stfd %f2,8(%r30)
b L(done_return_value)
L(float_return_value):
--
2.27.0

View File

@ -0,0 +1,79 @@
ffi_darwin: use FFI_GO_CLOSURES guard to avoid unsolvable dependencies
The go calls depend on compilation and link-time signatures and symbols
which are missing because they aren't build due to FFO_GO_CLOSURES not
being set.
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
--- a/src/powerpc/ffi_darwin.c 2018-04-02 14:21:51.000000000 +0200
+++ b/src/powerpc/ffi_darwin.c 2018-12-10 13:57:26.000000000 +0100
@@ -909,8 +909,10 @@
extern void ffi_call_AIX(extended_cif *, long, unsigned, unsigned *,
void (*fn)(void), void (*fn2)(void));
+#if FFI_GO_CLOSURES
extern void ffi_call_go_AIX(extended_cif *, long, unsigned, unsigned *,
void (*fn)(void), void (*fn2)(void), void *closure);
+#endif
extern void ffi_call_DARWIN(extended_cif *, long, unsigned, unsigned *,
void (*fn)(void), void (*fn2)(void), ffi_type*);
@@ -950,6 +952,7 @@
}
}
+#if FFI_GO_CLOSURES
void
ffi_call_go (ffi_cif *cif, void (*fn) (void), void *rvalue, void **avalue,
void *closure)
@@ -981,6 +984,7 @@
break;
}
}
+#endif
static void flush_icache(char *);
static void flush_range(char *, int);
@@ -1110,6 +1114,7 @@
return FFI_OK;
}
+#if FFI_GO_CLOSURES
ffi_status
ffi_prep_go_closure (ffi_go_closure* closure,
ffi_cif* cif,
@@ -1133,6 +1138,7 @@
}
return FFI_OK;
}
+#endif
static void
flush_icache(char *addr)
@@ -1168,9 +1174,11 @@
ffi_closure_helper_DARWIN (ffi_closure *, void *,
unsigned long *, ffi_dblfl *);
+#if FFI_GO_CLOSURES
ffi_type *
ffi_go_closure_helper_DARWIN (ffi_go_closure*, void *,
unsigned long *, ffi_dblfl *);
+#endif
/* Basically the trampoline invokes ffi_closure_ASM, and on
entry, r11 holds the address of the closure.
@@ -1430,6 +1438,7 @@
closure->user_data, rvalue, pgr, pfr);
}
+#if FFI_GO_CLOSURES
ffi_type *
ffi_go_closure_helper_DARWIN (ffi_go_closure *closure, void *rvalue,
unsigned long *pgr, ffi_dblfl *pfr)
@@ -1437,4 +1446,5 @@
return ffi_closure_helper_common (closure->cif, closure->fun,
closure, rvalue, pgr, pfr);
}
+#endif

View File

@ -1,65 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit eutils libtool multilib toolchain-funcs multilib-minimal
DESCRIPTION="a portable, high level programming interface to various calling conventions"
HOMEPAGE="http://sourceware.org/libffi/"
SRC_URI="ftp://sourceware.org/pub/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug pax_kernel static-libs test"
RDEPEND="abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r1
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
DEPEND="test? ( dev-util/dejagnu )"
DOCS="ChangeLog* README"
ECONF_SOURCE=${S}
pkg_setup() {
# Check for orphaned libffi, see https://bugs.gentoo.org/354903 for example
if [[ ${ROOT} == "/" && ${EPREFIX} == "" ]] && ! has_version ${CATEGORY}/${PN}; then
local base="${T}"/conftest
echo 'int main() { }' > "${base}".c
$(tc-getCC) -o "${base}" "${base}".c -lffi >&/dev/null
if [ $? -eq 0 ]; then
eerror "The linker reported linking against -lffi to be working while it shouldn't have."
eerror "This is wrong and you should find and delete the old copy of libffi before continuing."
die "The system is in inconsistent state with unknown libffi installed."
fi
fi
}
src_prepare() {
sed -i 's:@toolexeclibdir@:$(libdir):g' Makefile.in || die #462814
epatch "${FILESDIR}"/${P}-emutramp_pax_proc.patch #457194
epatch_user
elibtoolize
}
multilib_src_configure() {
use userland_BSD && export HOST="${CHOST}"
econf \
$(use_enable static-libs static) \
$(use_enable pax_kernel pax_emutramp) \
$(use_enable debug)
}
multilib_src_install_all() {
prune_libtool_files
einstalldocs
}
pkg_preinst() {
preserve_old_lib /usr/$(get_libdir)/${PN}$(get_libname 5)
}
pkg_postinst() {
preserve_old_lib_notify /usr/$(get_libdir)/${PN}$(get_libname 5)
}

View File

@ -1,63 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit eutils libtool multilib multilib-minimal toolchain-funcs
DESCRIPTION="a portable, high level programming interface to various calling conventions"
HOMEPAGE="http://sourceware.org/libffi/"
SRC_URI="ftp://sourceware.org/pub/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug pax_kernel static-libs test"
RDEPEND="abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r1
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
DEPEND="test? ( dev-util/dejagnu )"
DOCS="ChangeLog* README"
ECONF_SOURCE=${S}
pkg_setup() {
# Check for orphaned libffi, see https://bugs.gentoo.org/354903 for example
if [[ ${ROOT} == "/" && ${EPREFIX} == "" ]] && ! has_version ${CATEGORY}/${PN}; then
local base="${T}"/conftest
echo 'int main() { }' > "${base}".c
$(tc-getCC) -o "${base}" "${base}".c -lffi >&/dev/null
if [ $? -eq 0 ]; then
eerror "The linker reported linking against -lffi to be working while it shouldn't have."
eerror "This is wrong and you should find and delete the old copy of libffi before continuing."
die "The system is in inconsistent state with unknown libffi installed."
fi
fi
}
src_prepare() {
epatch \
"${FILESDIR}"/${P}-execstack.patch \
"${FILESDIR}"/${P}-typing_error.patch
sed -i -e 's:@toolexeclibdir@:$(libdir):g' Makefile.in || die #462814
# http://sourceware.org/ml/libffi-discuss/2014/msg00060.html
sed -i -e 's:@toolexeclibdir@:${libdir}:' libffi.pc.in || die #511726
epatch_user
elibtoolize
}
multilib_src_configure() {
use userland_BSD && export HOST="${CHOST}"
econf \
$(use_enable static-libs static) \
$(use_enable pax_kernel pax_emutramp) \
$(use_enable debug)
}
multilib_src_install_all() {
prune_libtool_files
einstalldocs
}

View File

@ -1,59 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit eutils libtool multilib multilib-minimal toolchain-funcs
DESCRIPTION="a portable, high level programming interface to various calling conventions"
HOMEPAGE="http://sourceware.org/libffi/"
SRC_URI="ftp://sourceware.org/pub/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug pax_kernel static-libs test"
RDEPEND="abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r1
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
DEPEND="test? ( dev-util/dejagnu )"
DOCS="ChangeLog* README"
ECONF_SOURCE=${S}
pkg_setup() {
# Check for orphaned libffi, see https://bugs.gentoo.org/354903 for example
if [[ ${ROOT} == "/" && ${EPREFIX} == "" ]] && ! has_version ${CATEGORY}/${PN}; then
local base="${T}"/conftest
echo 'int main() { }' > "${base}".c
$(tc-getCC) -o "${base}" "${base}".c -lffi >&/dev/null
if [ $? -eq 0 ]; then
eerror "The linker reported linking against -lffi to be working while it shouldn't have."
eerror "This is wrong and you should find and delete the old copy of libffi before continuing."
die "The system is in inconsistent state with unknown libffi installed."
fi
fi
}
src_prepare() {
sed -i -e 's:@toolexeclibdir@:$(libdir):g' Makefile.in || die #462814
epatch "${FILESDIR}"/${PN}-3.2.1-o-tmpfile-eacces.patch #529044
epatch "${FILESDIR}"/${PN}-3.2.1-complex_alpha.patch
epatch "${FILESDIR}"/${PN}-3.1-darwin-x32.patch
epatch_user
elibtoolize
}
multilib_src_configure() {
use userland_BSD && export HOST="${CHOST}"
econf \
$(use_enable static-libs static) \
$(use_enable pax_kernel pax_emutramp) \
$(use_enable debug)
}
multilib_src_install_all() {
prune_libtool_files
einstalldocs
}

View File

@ -1,60 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit eutils libtool multilib multilib-minimal toolchain-funcs
DESCRIPTION="a portable, high level programming interface to various calling conventions"
HOMEPAGE="http://sourceware.org/libffi/"
SRC_URI="ftp://sourceware.org/pub/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
# A number of people report python ctypes errors #529044
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug pax_kernel static-libs test"
RDEPEND="abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r1
!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
DEPEND="test? ( dev-util/dejagnu )"
DOCS="ChangeLog* README"
ECONF_SOURCE=${S}
pkg_setup() {
# Check for orphaned libffi, see https://bugs.gentoo.org/354903 for example
if [[ ${ROOT} == "/" && ${EPREFIX} == "" ]] && ! has_version ${CATEGORY}/${PN}; then
local base="${T}"/conftest
echo 'int main() { }' > "${base}".c
$(tc-getCC) -o "${base}" "${base}".c -lffi >&/dev/null
if [ $? -eq 0 ]; then
eerror "The linker reported linking against -lffi to be working while it shouldn't have."
eerror "This is wrong and you should find and delete the old copy of libffi before continuing."
die "The system is in inconsistent state with unknown libffi installed."
fi
fi
}
src_prepare() {
sed -i -e 's:@toolexeclibdir@:$(libdir):g' Makefile.in || die #462814
epatch "${FILESDIR}"/${PN}-3.1-darwin-x32.patch
epatch_user
elibtoolize
}
multilib_src_configure() {
use userland_BSD && export HOST="${CHOST}"
econf \
$(use_enable static-libs static) \
$(use_enable pax_kernel pax_emutramp) \
$(use_enable debug)
}
multilib_src_install_all() {
prune_libtool_files
einstalldocs
}

View File

@ -0,0 +1,74 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal
MY_PV=${PV/_rc/-rc}
MY_P=${PN}-${MY_PV}
DESCRIPTION="a portable, high level programming interface to various calling conventions"
HOMEPAGE="https://sourceware.org/libffi/"
SRC_URI="https://github.com/libffi/libffi/releases/download/v${MY_PV}/${MY_P}.tar.gz"
LICENSE="MIT"
SLOT="0/7" # SONAME=libffi.so.7
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug pax-kernel static-libs test"
RESTRICT="!test? ( test )"
RDEPEND=""
DEPEND=""
BDEPEND="test? ( dev-util/dejagnu )"
DOCS="ChangeLog* README.md"
PATCHES=(
"${FILESDIR}"/${PN}-3.2.1-o-tmpfile-eacces.patch #529044
"${FILESDIR}"/${PN}-3.3_rc0-ppc-macos-go.patch
"${FILESDIR}"/${PN}-3.3-power7.patch
"${FILESDIR}"/${PN}-3.3-power7-memcpy.patch
"${FILESDIR}"/${PN}-3.3-power7-memcpy-2.patch
"${FILESDIR}"/${PN}-3.3-ppc-int128.patch
"${FILESDIR}"/${PN}-3.3-ppc-vector-offset.patch
"${FILESDIR}"/${PN}-3.3-compiler-vendor-quote.patch
)
S=${WORKDIR}/${MY_P}
ECONF_SOURCE=${S}
src_prepare() {
default
if [[ ${CHOST} == arm64-*-darwin* ]] ; then
# ensure we use aarch64 asm, not x86 on arm64
sed -i -e 's/aarch64\*-\*-\*/arm64*-*-*|&/' \
configure configure.host || die
fi
}
multilib_src_configure() {
# --includedir= path maintains a few properties:
# 1. have stable name across libffi versions: some packages like
# dev-lang/ghc or kde-frameworks/networkmanager-qt embed
# ${includedir} at build-time. Don't require those to be
# rebuilt unless SONAME changes. bug #695788
#
# We use /usr/.../${PN} (instead of former /usr/.../${P}).
#
# 2. have ${ABI}-specific location as ffi.h is target-dependent.
#
# We use /usr/$(get_libdir)/... to have ABI identifier.
econf \
--includedir="${EPREFIX}"/usr/$(get_libdir)/${PN}/include \
--disable-multi-os-directory \
$(use_enable static-libs static) \
$(use_enable pax-kernel pax_emutramp) \
$(use_enable debug)
}
multilib_src_install_all() {
find "${ED}" -name "*.la" -delete || die
einstalldocs
}

View File

@ -0,0 +1,73 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal preserve-libs
MY_PV=${PV/_rc/-rc}
MY_P=${PN}-${MY_PV}
DESCRIPTION="a portable, high level programming interface to various calling conventions"
HOMEPAGE="https://sourceware.org/libffi/"
SRC_URI="https://github.com/libffi/libffi/releases/download/v${MY_PV}/${MY_P}.tar.gz"
S="${WORKDIR}"/${MY_P}
LICENSE="MIT"
# This is a core package which is depended on by e.g. Python
# Please use preserve-libs.eclass in pkg_{pre,post}inst to cover users
# with FEATURES="-preserved-libs" or another package manager if SONAME
# changes.
SLOT="0/8" # SONAME=libffi.so.8
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug exec-static-trampoline pax-kernel static-libs test"
RESTRICT="!test? ( test )"
BDEPEND="test? ( dev-util/dejagnu )"
DOCS="ChangeLog* README.md"
ECONF_SOURCE=${S}
src_prepare() {
default
if [[ ${CHOST} == arm64-*-darwin* ]] ; then
# ensure we use aarch64 asm, not x86 on arm64
sed -i -e 's/aarch64\*-\*-\*/arm64*-*-*|&/' \
configure configure.host || die
fi
}
multilib_src_configure() {
# --includedir= path maintains a few properties:
# 1. have stable name across libffi versions: some packages like
# dev-lang/ghc or kde-frameworks/networkmanager-qt embed
# ${includedir} at build-time. Don't require those to be
# rebuilt unless SONAME changes. bug #695788
#
# We use /usr/.../${PN} (instead of former /usr/.../${P}).
#
# 2. have ${ABI}-specific location as ffi.h is target-dependent.
#
# We use /usr/$(get_libdir)/... to have ABI identifier.
econf \
--includedir="${EPREFIX}"/usr/$(get_libdir)/${PN}/include \
--disable-multi-os-directory \
$(use_enable static-libs static) \
$(use_enable exec-static-trampoline exec-static-tramp) \
$(use_enable pax-kernel pax_emutramp) \
$(use_enable debug)
}
multilib_src_install_all() {
find "${ED}" -name "*.la" -delete || die
einstalldocs
}
pkg_preinst() {
preserve_old_lib /usr/$(get_libdir)/libffi.so.7
}
pkg_postinst() {
preserve_old_lib_notify /usr/$(get_libdir)/libffi.so.7
}

View File

@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>toolchain</herd>
<maintainer type="project">
<email>toolchain@gentoo.org</email>
<name>Gentoo Toolchain Project</name>
</maintainer>
<longdescription lang="en">
Compilers for high level languages generate code that follow certain
conventions. These conventions are necessary, in part, for separate
@ -31,6 +34,10 @@
between the two languages.
</longdescription>
<use>
<flag name='pax_kernel'>Use PaX emulated trampolines, for we can't use PROT_EXEC</flag>
<flag name="exec-static-trampoline">Don't rely on dynamic code generation for trampolines.</flag>
<flag name="pax-kernel">Use PaX emulated trampolines, for we can't use PROT_EXEC</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:libffi_project:libffi</remote-id>
</upstream>
</pkgmetadata>