Diff libffi-compat-3.2.1-r3 with a libffi-compat-3.3-r2

/usr/portage/dev-libs/libffi-compat/libffi-compat-3.3-r2.ebuild 2023-10-09 14:52:29.516368351 +0300
2 2
# Distributed under the terms of the GNU General Public License v2
3 3

  
4 4
EAPI=7
5
inherit libtool multilib-minimal
5

  
6
inherit multilib-minimal
6 7

  
7 8
DESCRIPTION="a portable, high level programming interface to various calling conventions"
8 9
HOMEPAGE="https://sourceware.org/libffi/"
9
SRC_URI="ftp://sourceware.org/pub/libffi/libffi-${PV}.tar.gz"
10
SRC_URI="https://github.com/libffi/libffi/releases/download/v${PV}/libffi-${PV}.tar.gz"
10 11

  
11 12
LICENSE="MIT"
12
SLOT="6" # libffi.so.6
13
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
13
SLOT="7" # SONAME=libffi.so.7
14
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
14 15
IUSE="debug pax-kernel test"
15 16

  
16 17
RESTRICT="!test? ( test )"
17 18

  
18
RDEPEND="!dev-libs/libffi:0/0" # conflicts on libffi.so.6
19
DEPEND="test? ( dev-util/dejagnu )"
19
RDEPEND="!dev-libs/libffi:0/7" # conflicts on libffi.so.7
20
DEPEND=""
21
BDEPEND="test? ( dev-util/dejagnu )"
20 22

  
21
DOCS="ChangeLog* README"
23
DOCS="ChangeLog* README.md"
22 24

  
23 25
PATCHES=(
24 26
	"${FILESDIR}"/libffi-3.2.1-o-tmpfile-eacces.patch #529044
25
	"${FILESDIR}"/libffi-3.2.1-complex_alpha.patch
26
	"${FILESDIR}"/libffi-3.1-darwin-x32.patch
27
	"${FILESDIR}"/libffi-3.2.1-complex-ia64.patch
28
	"${FILESDIR}"/libffi-3.2.1-include-path.patch
29
	"${FILESDIR}"/libffi-3.2.1-include-path-autogen.patch
30
	"${FILESDIR}"/libffi-3.2.1-ia64-small-struct.patch #634190
31
	"${FILESDIR}"/libffi-3.2.1-musl-emutramp.patch #694916
27
	"${FILESDIR}"/libffi-3.3_rc0-ppc-macos-go.patch
28
	"${FILESDIR}"/libffi-3.3-power7.patch
29
	"${FILESDIR}"/libffi-3.3-power7-memcpy.patch
30
	"${FILESDIR}"/libffi-3.3-power7-memcpy-2.patch
31
	"${FILESDIR}"/libffi-3.3-ppc-int128.patch
32
	"${FILESDIR}"/libffi-3.3-ppc-vector-offset.patch
33
	"${FILESDIR}"/libffi-3.3-compiler-vendor-quote.patch
32 34
)
33 35

  
34 36
S=${WORKDIR}/libffi-${PV}
37

  
35 38
ECONF_SOURCE=${S}
36 39

  
37 40
src_prepare() {
38 41
	default
39

  
40
	sed -i -e 's:@toolexeclibdir@:$(libdir):g' Makefile.in || die #462814
41
	elibtoolize
42
	if [[ ${CHOST} == arm64-*-darwin* ]] ; then
43
		# ensure we use aarch64 asm, not x86 on arm64
44
		sed -i -e 's/aarch64\*-\*-\*/arm64*-*-*|&/' \
45
			configure configure.host || die
46
	fi
42 47
}
43 48

  
44 49
multilib_src_configure() {
50
	# --includedir= path maintains a few properties:
51
	# 1. have stable name across libffi versions: some packages like
52
	#    dev-lang/ghc or kde-frameworks/networkmanager-qt embed
53
	#    ${includedir} at build-time. Don't require those to be
54
	#    rebuilt unless SONAME changes. bug #695788
55
	#
56
	#    We use /usr/.../${PN} (instead of former /usr/.../${P}).
57
	#
58
	# 2. have ${ABI}-specific location as ffi.h is target-dependent.
59
	#
60
	#    We use /usr/$(get_libdir)/... to have ABI identifier.
45 61
	econf \
62
		--includedir="${EPREFIX}"/usr/$(get_libdir)/${PN}/include \
63
		--disable-multi-os-directory \
46 64
		--disable-static \
47 65
		$(use_enable pax-kernel pax_emutramp) \
48 66
		$(use_enable debug)
Thank you!