summaryrefslogtreecommitdiff
path: root/dev-libs/ffcall
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-libs/ffcall
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-libs/ffcall')
-rw-r--r--dev-libs/ffcall/Manifest3
-rw-r--r--dev-libs/ffcall/ffcall-2.1.ebuild64
-rw-r--r--dev-libs/ffcall/metadata.xml30
3 files changed, 97 insertions, 0 deletions
diff --git a/dev-libs/ffcall/Manifest b/dev-libs/ffcall/Manifest
new file mode 100644
index 000000000000..4757f1fddec7
--- /dev/null
+++ b/dev-libs/ffcall/Manifest
@@ -0,0 +1,3 @@
+DIST libffcall-2.1.tar.gz 943235 BLAKE2B ae82663174db084e830b6ff77ceedf8641b3edeb7800952ac4e2772d9033da3e45f46159e6fdae86615dc69fceba39f48d6c75e6cbd41be98f1986fa69d50b3b SHA512 da73375fb45b7d764c06437a517c2a90abf7d5de6afe0a8ca19e6dfafd2a8c7107e39d230ecbc8edfdd5926b16a0c13b7bb9319287047c47de1241b2f6ae805e
+EBUILD ffcall-2.1.ebuild 1517 BLAKE2B 0fc1ec51a7bcdbe83541e3b384060a8b370d29b3ccfbf6fa878684aaea5616691a2871a911e10dbdfae3bfb125682e7fb5f542c83eedf5f277fdb6081c399c6c SHA512 0ad442318a572ceb4ab9ca4682c15bdf3a6074a67df3f34ac352fd60c2703485cf801839597bd702db4f45bdb8b76f379140f78fa325b9923c6e9ac85cf8b07e
+MISC metadata.xml 858 BLAKE2B a47a659baa99a77ae0caae149918d698ab357a691fd1c57dfe9671ab5631da54b15daaa96fe45b251f800fcb00da5e3c6e87e30eec2bc960301fa6f818cb34da SHA512 e64e471f2fdcc289c678bfc4fe3d2f652062907f9ff18d0350c0907b3d9bfa4e92c76bf04d1b2f0fb3f820f917ec4e3bd7d997a0d5e2eb270ac10516cb58f971
diff --git a/dev-libs/ffcall/ffcall-2.1.ebuild b/dev-libs/ffcall/ffcall-2.1.ebuild
new file mode 100644
index 000000000000..f117b8a8f4b4
--- /dev/null
+++ b/dev-libs/ffcall/ffcall-2.1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils flag-o-matic toolchain-funcs
+
+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"
+
+# "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 ~arm64 ~hppa ia64 ppc ~ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE=""
+
+S=${WORKDIR}/${MY_PV}
+
+DEPEND=""
+RDEPEND=""
+
+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
+
+ for mfi in {,*/,*/*/,}Makefile.in
+ do
+ elog "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
+ eapply_user
+}
+
+src_configure() {
+ append-flags -fPIC
+
+ # Doc goes in datadir
+ econf \
+ --datadir="${EPREFIX}"/usr/share/doc/${PF} \
+ --enable-shared \
+ --disable-static
+}
+
+src_compile() {
+ # TODO. Remove -j1
+ emake -j1
+}
+
+src_install() {
+ dodoc NEWS README
+ dodir /usr/share/man
+ default
+ prune_libtool_files
+}
diff --git a/dev-libs/ffcall/metadata.xml b/dev-libs/ffcall/metadata.xml
new file mode 100644
index 000000000000..5b705d074820
--- /dev/null
+++ b/dev-libs/ffcall/metadata.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/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="sourceforge">clisp</remote-id>
+ </upstream>
+</pkgmetadata>