summaryrefslogtreecommitdiff
path: root/dev-libs/ffcall
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
commitb590c8d7572b727d565cc0b8ff660d43569845de (patch)
tree06f7a4102ea4e845df8b66660f252920d52952f9 /dev-libs/ffcall
parent24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff)
downloadbaldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip
Adding metadata
Diffstat (limited to 'dev-libs/ffcall')
-rw-r--r--dev-libs/ffcall/Manifest1
-rw-r--r--dev-libs/ffcall/ffcall-2.5.ebuild67
-rw-r--r--dev-libs/ffcall/metadata.xml31
3 files changed, 99 insertions, 0 deletions
diff --git a/dev-libs/ffcall/Manifest b/dev-libs/ffcall/Manifest
new file mode 100644
index 000000000000..1fb32a4b6ac9
--- /dev/null
+++ b/dev-libs/ffcall/Manifest
@@ -0,0 +1 @@
+DIST libffcall-2.5.tar.gz 1451999 BLAKE2B 552a0a33bbed91380ced4bdb0f87f38be0a531e729b9530d80dd777ce93b4fe3515a984c2da0221e0110756fbbc099d666b1fed6f5cfacfccbedda7f97e58054 SHA512 5e5b1c34b9e66bde00e1deea464099ef09e439070e8180c04f2520442933e369e76632346ae59a5720356128787e88255bd75764736ac9b5334a592eb6cf5878
diff --git a/dev-libs/ffcall/ffcall-2.5.ebuild b/dev-libs/ffcall/ffcall-2.5.ebuild
new file mode 100644
index 000000000000..13a914561627
--- /dev/null
+++ b/dev-libs/ffcall/ffcall-2.5.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dot-a flag-o-matic libtool
+
+MY_PV="libffcall-${PV}"
+
+DESCRIPTION="Build foreign function call interfaces in embedded interpreter"
+HOMEPAGE="https://www.gnu.org/software/libffcall/"
+SRC_URI="mirror://gnu/libffcall/${MY_PV}.tar.gz"
+S="${WORKDIR}"/${MY_PV}
+
+# "Ffcall is under GNU GPL. As a special exception, if used in GNUstep
+# or in derivate works of GNUstep, the included parts of ffcall are
+# under GNU LGPL." -ffcall author
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86"
+
+src_prepare() {
+ # The build system is a strange mix of autogenerated
+ # files and manual tweaks on top. Uses $CFLAGS / $LDFLAGS randomly.
+ # We are adding them consistently here and a bit over the top:
+ # bugs: #334581
+ local mfi
+ for mfi in {,*/,*/*/,}Makefile.in ; do
+ einfo "Patching '${mfi}'"
+ # usually uses only assembler here, but -march=
+ # and -Wa, are a must to pass here.
+ sed -e 's/$(CC) /&$(CFLAGS) /g' \
+ -i "${mfi}" || die
+ done
+
+ default
+ elibtoolize
+
+ if use kernel_linux ; then
+ QA_CONFIG_IMPL_DECL_SKIP=( PROT_MPROTECT )
+ fi
+
+}
+
+src_configure() {
+ append-flags -fPIC
+ lto-guarantee-fat
+
+ # Doc goes in datadir
+ econf \
+ --datadir="${EPREFIX}"/usr/share/doc/${PF} \
+ --enable-shared
+}
+
+src_compile() {
+ emake -j1
+}
+
+src_install() {
+ dodoc NEWS README
+ dodir /usr/share/man
+
+ default
+ strip-lto-bytecode
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/ffcall/metadata.xml b/dev-libs/ffcall/metadata.xml
new file mode 100644
index 000000000000..93685075928c
--- /dev/null
+++ b/dev-libs/ffcall/metadata.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>common-lisp@gentoo.org</email>
+ <name>Gentoo Common Lisp Project</name>
+ </maintainer>
+ <longdescription>
+ffcall - foreign function call libraries
+This is a collection of four libraries which can be used to build foreign
+function call interfaces in embedded interpreters.
+
+The four packages are:
+
+avcall
+- calling C functions with variable arguments
+
+vacall
+- C functions accepting variable argument prototypes
+
+trampoline
+- closures as first-class C functions
+
+callback
+- closures with variable arguments as first-class C functions (a reentrant combination of vacall and trampoline)
+ </longdescription>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:gnu:libffcall</remote-id>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>