commit:     c63154253d9b64a95c1f675538793d2b48b40d1e
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 06:38:42 2017 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 06:56:05 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c6315425

dev-ruby/rcairo: avoid dependency on unpackaged gem, bug 626518

Package-Manager: Portage-2.3.6, Repoman-2.3.2

 dev-ruby/rcairo/rcairo-1.15.9-r1.ebuild | 81 +++++++++++++++++++++++++++++++++
 1 file changed, 81 insertions(+)

diff --git a/dev-ruby/rcairo/rcairo-1.15.9-r1.ebuild 
b/dev-ruby/rcairo/rcairo-1.15.9-r1.ebuild
new file mode 100644
index 00000000000..8a16b08ca4d
--- /dev/null
+++ b/dev-ruby/rcairo/rcairo-1.15.9-r1.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+USE_RUBY="ruby21 ruby22 ruby23 ruby24"
+
+RUBY_FAKEGEM_NAME="cairo"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="AUTHORS NEWS"
+
+inherit multilib ruby-fakegem
+
+DESCRIPTION="Ruby bindings for cairo"
+HOMEPAGE="https://cairographics.org/rcairo/";
+
+IUSE=""
+
+SLOT="0"
+LICENSE="|| ( Ruby GPL-2 )"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+RDEPEND="${RDEPEND}
+       >=x11-libs/cairo-1.2.0[svg]"
+DEPEND="${DEPEND}
+       >=x11-libs/cairo-1.2.0[svg]"
+
+ruby_add_bdepend "
+       >=dev-ruby/pkg-config-1.1.5
+       dev-ruby/ruby-glib2
+       test? ( >=dev-ruby/test-unit-2.1.0-r1:2 )"
+
+all_ruby_prepare() {
+       # Avoid development dependency.
+       sed -i -e '/notify/ s:^:#:' test/cairo-test-utils.rb || die
+
+       # Avoid unneeded dependency
+       sed -i -e '/native-package-installer/ s:^:#:' ext/cairo/extconf.rb || 
die
+       sed -i -e '/native-package-installer/,/Gem::Dependency/ d' ../metadata 
|| die
+
+       # Avoid test that requires unpackaged fixture
+       sed -i -e '/sub_test_case..FreeTypeFontFace/,/^  end/ s:^:#:' 
test/test_font_face.rb || die
+}
+
+each_ruby_configure() {
+       ${RUBY} -Cext/cairo extconf.rb || die "extconf failed"
+}
+
+each_ruby_compile() {
+       emake V=1 -Cext/cairo
+
+       # again, try to make it more standard, to install it more easily.
+       cp ext/cairo/cairo$(get_modname) lib/ || die
+}
+
+each_ruby_test() {
+       # don't rely on the Rakefile because it's a mess to load with
+       # their hierarchy, do it manually.
+       ${RUBY} -Ilib -r ./test/cairo-test-utils.rb \
+               -e 'gem "test-unit"; require "test/unit"; 
Dir.glob("test/**/test_*.rb") {|f| load f}' || die "tests failed"
+}
+
+each_ruby_install() {
+       each_fakegem_install
+
+       insinto $(ruby_get_hdrdir)
+       doins ext/cairo/rb_cairo.h
+}
+
+all_ruby_install() {
+       all_fakegem_install
+
+       insinto /usr/share/doc/${PF}/samples
+       doins -r samples/*
+}

Reply via email to