1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
6 USE_RUBY="ruby24 ruby25 ruby26 ruby27"
8 RUBY_FAKEGEM_RECIPE_TEST="rspec3"
10 RUBY_FAKEGEM_DOCDIR="doc"
11 RUBY_FAKEGEM_EXTRADOC="README.md"
13 inherit multilib ruby-fakegem toolchain-funcs
15 DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
16 HOMEPAGE="https://wiki.github.com/ffi/ffi"
18 SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
23 KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
25 RDEPEND+=" dev-libs/libffi:0="
26 DEPEND+=" dev-libs/libffi"
28 ruby_add_bdepend "dev-ruby/rake"
31 sed -i -e '/tasks/ s:^:#:' \
32 -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
34 # Fix Makefile for tests
35 sed -i -e '/CCACHE :=/ s:^:#:' \
37 -e 's/^CFLAGS =/CFLAGS +=/' spec/ffi/fixtures/GNUmakefile || die
39 # Remove bundled version of libffi.
40 rm -rf ext/ffi_c/libffi || die
43 each_ruby_configure() {
44 ${RUBY} -Cext/ffi_c extconf.rb || die
49 cp ext/ffi_c/ffi_c$(get_modname) lib/ || die
51 ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
55 CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die