summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaleb Tennis <caleb@gentoo.org>2007-02-02 14:10:48 +0000
committerCaleb Tennis <caleb@gentoo.org>2007-02-02 14:10:48 +0000
commit7a780e67cbb12f1389b8dff432f8d112cd49c49a (patch)
treeeebb974318fecbb15204f6564d1551ac33cb287d /dev-ruby/IceRuby
parentStable on sparc wrt #164978 (diff)
downloadgentoo-2-7a780e67cbb12f1389b8dff432f8d112cd49c49a.tar.gz
gentoo-2-7a780e67cbb12f1389b8dff432f8d112cd49c49a.tar.bz2
gentoo-2-7a780e67cbb12f1389b8dff432f8d112cd49c49a.zip
Add a patch to fix an array bug
(Portage version: 2.1.2-r5)
Diffstat (limited to 'dev-ruby/IceRuby')
-rw-r--r--dev-ruby/IceRuby/ChangeLog10
-rw-r--r--dev-ruby/IceRuby/IceRuby-3.1.1-r1.ebuild61
-rw-r--r--dev-ruby/IceRuby/files/array_fix-3.1.1.patch65
-rw-r--r--dev-ruby/IceRuby/files/digest-IceRuby-3.1.1-r13
4 files changed, 137 insertions, 2 deletions
diff --git a/dev-ruby/IceRuby/ChangeLog b/dev-ruby/IceRuby/ChangeLog
index 5d966251887e..35dd8f7da376 100644
--- a/dev-ruby/IceRuby/ChangeLog
+++ b/dev-ruby/IceRuby/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-ruby/IceRuby
-# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-ruby/IceRuby/ChangeLog,v 1.1 2006/10/30 14:37:08 caleb Exp $
+# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/IceRuby/ChangeLog,v 1.2 2007/02/02 14:10:48 caleb Exp $
+
+*IceRuby-3.1.1-r1 (02 Feb 2007)
+
+ 02 Feb 2007; Caleb Tennis <caleb@gentoo.org> +files/array_fix-3.1.1.patch,
+ +IceRuby-3.1.1-r1.ebuild:
+ Add a patch to fix an array bug
*IceRuby-3.1.1 (30 Oct 2006)
diff --git a/dev-ruby/IceRuby/IceRuby-3.1.1-r1.ebuild b/dev-ruby/IceRuby/IceRuby-3.1.1-r1.ebuild
new file mode 100644
index 000000000000..a92d5e20fb6f
--- /dev/null
+++ b/dev-ruby/IceRuby/IceRuby-3.1.1-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-ruby/IceRuby/IceRuby-3.1.1-r1.ebuild,v 1.1 2007/02/02 14:10:48 caleb Exp $
+
+inherit eutils
+
+DESCRIPTION="ICE middleware C++ bindings"
+HOMEPAGE="http://www.zeroc.com/index.html"
+SRC_URI="http://www.zeroc.com/download/Ice/3.1/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="test debug"
+
+DEPEND="=dev-cpp/Ice-3.1*
+ >=dev-lang/ruby-1.8.4
+ test? ( >=dev-lang/python-2.4 )"
+
+ICE_HOME=/usr
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ epatch ${FILESDIR}/${P}-Makefile.patch
+ epatch ${FILESDIR}/array_fix-${PV}.patch
+
+ mkdir -p ${WORKDIR}/bin
+ mkdir -p ${WORKDIR}/lib
+
+ if use amd64; then
+ sed -i -e "s:^#LP64:LP64:g" ${S}/config/Make.rules \
+ || die "Failed to set lib64 directory"
+ fi
+
+ if ! use debug; then
+ sed -i -e "s:#OPTIMIZE:OPTIMIZE:" \
+ ${S}/config/Make.rules || die "Failed to remove debug"
+ fi
+
+ sed -i -e \
+ "s:.*CXXFLAGS[^\+]*\=\s:CXXFLAGS = ${CXXFLAGS} :g" \
+ ${S}/config/Make.rules.Linux || die "CXXFLAGS patching failed!"
+}
+
+src_compile() {
+ cd ${S}
+ export ICE_HOME=/usr
+ make || die "Died during make"
+}
+
+src_install() {
+ export ICE_HOME=/usr
+ make DESTDIR="${D}" install || die "Install Failed!"
+}
+
+src_test() {
+ export ICE_HOME=/usr
+ make test || die "Test failed"
+}
diff --git a/dev-ruby/IceRuby/files/array_fix-3.1.1.patch b/dev-ruby/IceRuby/files/array_fix-3.1.1.patch
new file mode 100644
index 000000000000..20fa180d5dbe
--- /dev/null
+++ b/dev-ruby/IceRuby/files/array_fix-3.1.1.patch
@@ -0,0 +1,65 @@
+--- src/IceRuby/Types.cpp.orig 2007-02-02 08:58:24.000000000 -0500
++++ src/IceRuby/Types.cpp 2007-02-02 09:02:41.000000000 -0500
+@@ -548,7 +548,7 @@
+ {
+ RARRAY(arr)->ptr[i] = INT2FIX(seq[i]);
+ }
+- RARRAY(arr)->len = sz;
++ RARRAY(arr)->len++;
+ break;
+ }
+ case PrimitiveInfo::KindShort:
+@@ -561,7 +561,7 @@
+ {
+ RARRAY(arr)->ptr[i] = INT2FIX(seq[i]);
+ }
+- RARRAY(arr)->len = sz;
++ RARRAY(arr)->len++;
+ break;
+ }
+ case PrimitiveInfo::KindInt:
+@@ -574,7 +574,7 @@
+ {
+ RARRAY(arr)->ptr[i] = INT2FIX(seq[i]);
+ }
+- RARRAY(arr)->len = sz;
++ RARRAY(arr)->len++;
+ break;
+ }
+ case PrimitiveInfo::KindLong:
+@@ -587,7 +587,7 @@
+ {
+ RARRAY(arr)->ptr[i] = callRuby(rb_ll2inum, seq[i]);
+ }
+- RARRAY(arr)->len = sz;
++ RARRAY(arr)->len++;
+ break;
+ }
+ case PrimitiveInfo::KindFloat:
+@@ -600,7 +600,7 @@
+ {
+ RARRAY(arr)->ptr[i] = callRuby(rb_float_new, seq[i]);
+ }
+- RARRAY(arr)->len = sz;
++ RARRAY(arr)->len++;
+ break;
+ }
+ case PrimitiveInfo::KindDouble:
+@@ -613,7 +613,7 @@
+ {
+ RARRAY(arr)->ptr[i] = callRuby(rb_float_new, seq[i]);
+ }
+- RARRAY(arr)->len = sz;
++ RARRAY(arr)->len++;
+ break;
+ }
+ case PrimitiveInfo::KindString:
+@@ -626,7 +626,7 @@
+ {
+ RARRAY(arr)->ptr[i] = createString(seq[i]);
+ }
+- RARRAY(arr)->len = sz;
++ RARRAY(arr)->len++;
+ break;
+ }
+ }
diff --git a/dev-ruby/IceRuby/files/digest-IceRuby-3.1.1-r1 b/dev-ruby/IceRuby/files/digest-IceRuby-3.1.1-r1
new file mode 100644
index 000000000000..4a75c2084f7c
--- /dev/null
+++ b/dev-ruby/IceRuby/files/digest-IceRuby-3.1.1-r1
@@ -0,0 +1,3 @@
+MD5 d48d954b92afb3399ffdfea9f3ff0c21 IceRuby-3.1.1.tar.gz 337998
+RMD160 7c8fdd43469432bbfabc9ca49018349a4418c928 IceRuby-3.1.1.tar.gz 337998
+SHA256 1dee046bab93e4320a2b69a6b6b4beb16bd7a2e8b45553299c468773f9e57f8e IceRuby-3.1.1.tar.gz 337998