summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Graaff <graaff@gentoo.org>2010-08-08 18:03:58 +0000
committerHans de Graaff <graaff@gentoo.org>2010-08-08 18:03:58 +0000
commit3d332eda9b58d0f5ac687de760df7930af7da879 (patch)
tree0a8538328c4de55a24dbe9e654f3145580f37aa4 /dev-ruby/ruby-prof/ruby-prof-0.8.2-r1.ebuild
parentRemove old versions. (diff)
downloadgentoo-2-3d332eda9b58d0f5ac687de760df7930af7da879.tar.gz
gentoo-2-3d332eda9b58d0f5ac687de760df7930af7da879.tar.bz2
gentoo-2-3d332eda9b58d0f5ac687de760df7930af7da879.zip
Match require path to where the shared object actually is, fixes bug 316523.
(Portage version: 2.1.8.3/cvs/Linux x86_64)
Diffstat (limited to 'dev-ruby/ruby-prof/ruby-prof-0.8.2-r1.ebuild')
-rw-r--r--dev-ruby/ruby-prof/ruby-prof-0.8.2-r1.ebuild71
1 files changed, 71 insertions, 0 deletions
diff --git a/dev-ruby/ruby-prof/ruby-prof-0.8.2-r1.ebuild b/dev-ruby/ruby-prof/ruby-prof-0.8.2-r1.ebuild
new file mode 100644
index 000000000000..664bd9cd3f1b
--- /dev/null
+++ b/dev-ruby/ruby-prof/ruby-prof-0.8.2-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/ruby-prof/ruby-prof-0.8.2-r1.ebuild,v 1.1 2010/08/08 18:03:58 graaff Exp $
+
+EAPI=2
+
+# jruby → not compatible, since it uses an extension
+USE_RUBY="ruby18 ruby19"
+
+RUBY_FAKEGEM_EXTRADOC="README CHANGES"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+inherit multilib ruby-fakegem
+
+DESCRIPTION="A module for profiling Ruby code"
+HOMEPAGE="http://rubyforge.org/projects/ruby-prof/"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( virtual/ruby-test-unit )"
+
+all_ruby_prepare() {
+ # The thread testing in 0.8.1 and earlier versions is broken, it
+ # has to be tested for the next versions, since upstream is
+ # looking for a solution. The problem is that it's _very_
+ # timing-dependent.
+ rm "${S}"/test/thread_test.rb \
+ || die "unable to remove broken test unit"
+ sed -i -e '/thread_test/d' \
+ test/test_suite.rb || die "unable to remove broken test reference"
+
+ # We install the shared object in lib, not ext.
+ sed -i -e 's#../ext/ruby_prof#../lib/ruby_prof#' lib/ruby-prof.rb
+}
+
+each_ruby_prepare() {
+ case ${RUBY} in
+ *ruby19)
+ # On ruby 1.9 this test fails badly, so we disable it
+ # until upstream can fix the related bug:
+ # http://redmine.ruby-lang.org/issues/show/2012
+ sed -i -e '/^ def test_flat_string_with_numbers/,/^ end/ s:^:#:' \
+ test/printers_test.rb || die "Unable to disable test_flat_string_with_numbers"
+ ;;
+ esac
+}
+
+each_ruby_configure() {
+ ${RUBY} -Cext/ruby_prof extconf.rb || die "extconf.rb failed"
+}
+
+each_ruby_compile() {
+ # gem ships with prebuild files
+ emake -Cext/ruby_prof clean || die "clean failed"
+ emake -Cext/ruby_prof || die "build failed"
+
+ mkdir lib/ruby_prof || die "unable to create directory for shared object"
+ cp ext/ruby_prof/*$(get_modname) lib/ruby_prof || die "copy of extension failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ for dir in examples rails rails/example rails/environment; do
+ docinto "$dir"
+ dodoc "$dir"/* || die "dodoc $dir failed"
+ done
+}