summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkinori Hattori <hattya@gentoo.org>2012-10-28 07:53:43 +0000
committerAkinori Hattori <hattya@gentoo.org>2012-10-28 07:53:43 +0000
commitf055bd2ebdc6a1c3af74f7a17b8b31f4076113a2 (patch)
tree1f9ce5a907844d84042598c1cf587638d8c796b9 /dev-db/qdbm
parentAdd missing unistd include in test/unit/TestUtils.cpp for bug #439784. (diff)
downloadgentoo-2-f055bd2ebdc6a1c3af74f7a17b8b31f4076113a2.tar.gz
gentoo-2-f055bd2ebdc6a1c3af74f7a17b8b31f4076113a2.tar.bz2
gentoo-2-f055bd2ebdc6a1c3af74f7a17b8b31f4076113a2.zip
add patch to fix compilation error with Ruby 1.9 wrt bug #439622
(Portage version: 2.1.11.9/cvs/Linux i686)
Diffstat (limited to 'dev-db/qdbm')
-rw-r--r--dev-db/qdbm/ChangeLog7
-rw-r--r--dev-db/qdbm/files/qdbm-ruby19.diff363
-rw-r--r--dev-db/qdbm/qdbm-1.8.78-r1.ebuild3
3 files changed, 370 insertions, 3 deletions
diff --git a/dev-db/qdbm/ChangeLog b/dev-db/qdbm/ChangeLog
index 01e07c2de6c7..f82ec5901d59 100644
--- a/dev-db/qdbm/ChangeLog
+++ b/dev-db/qdbm/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for dev-db/qdbm
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/qdbm/ChangeLog,v 1.141 2012/07/07 12:51:46 hattya Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/qdbm/ChangeLog,v 1.142 2012/10/28 07:53:43 hattya Exp $
+
+ 28 Oct 2012; Akinori Hattori <hattya@gentoo.org> +files/qdbm-ruby19.diff,
+ qdbm-1.8.78-r1.ebuild:
+ add patch to fix compilation error with Ruby 1.9 wrt bug #439622
07 Jul 2012; Akinori Hattori <hattya@gentoo.org> -qdbm-1.8.77.ebuild:
remove old ebuild.
@@ -502,4 +506,3 @@
+qdbm-1.8.13.ebuild:
Initial revision. Based on the ebuild from Atzm Watanabe
<sitosito@p.chan.ne.jp> in bug #55574, and modified by me.
-
diff --git a/dev-db/qdbm/files/qdbm-ruby19.diff b/dev-db/qdbm/files/qdbm-ruby19.diff
new file mode 100644
index 000000000000..51c2800e74d7
--- /dev/null
+++ b/dev-db/qdbm/files/qdbm-ruby19.diff
@@ -0,0 +1,363 @@
+--- qdbm-1.8.78.orig/ruby/Makefile.in
++++ qdbm-1.8.78/ruby/Makefile.in
+@@ -85,27 +85,27 @@
+ sync ; sync
+ cd depot && rm -rf casket
+ cd depot && \
+- $(RUNENV) ruby -w -Ilib rbdptest write casket 10000 1000
++ $(RUNENV) ruby -w -Ilib -I. rbdptest write casket 10000 1000
+ cd depot && \
+- $(RUNENV) ruby -w -Ilib rbdptest read casket
++ $(RUNENV) ruby -w -Ilib -I. rbdptest read casket
+ cd depot && \
+- $(RUNENV) ruby -w -Ilib rbdptest misc casket
++ $(RUNENV) ruby -w -Ilib -I. rbdptest misc casket
+ cd depot && rm -rf casket
+ cd curia && rm -rf casket
+ cd curia && \
+- $(RUNENV) ruby -w -Ilib rbcrtest write casket 10000 1000 10
++ $(RUNENV) ruby -w -Ilib -I. rbcrtest write casket 10000 1000 10
+ cd curia && \
+- $(RUNENV) ruby -w -Ilib rbcrtest read casket
++ $(RUNENV) ruby -w -Ilib -I. rbcrtest read casket
+ cd curia && \
+- $(RUNENV) ruby -w -Ilib rbcrtest misc casket
++ $(RUNENV) ruby -w -Ilib -I. rbcrtest misc casket
+ cd curia && rm -rf casket
+ cd villa && rm -rf casket
+ cd villa && \
+- $(RUNENV) ruby -w -Ilib rbvltest write casket 10000
++ $(RUNENV) ruby -w -Ilib -I. rbvltest write casket 10000
+ cd villa && \
+- $(RUNENV) ruby -w -Ilib rbvltest read casket
++ $(RUNENV) ruby -w -Ilib -I. rbvltest read casket
+ cd villa && \
+- $(RUNENV) ruby -w -Ilib rbvltest misc casket
++ $(RUNENV) ruby -w -Ilib -I. rbvltest misc casket
+ cd villa && rm -rf casket
+ @printf '\n'
+ @printf '#================================================================\n'
+--- qdbm-1.8.78.orig/ruby/curia/mod_curia.c
++++ qdbm-1.8.78/ruby/curia/mod_curia.c
+@@ -24,6 +24,13 @@
+
+ #define MAXOPEN 1024
+
++#ifndef StringValuePtr
++# define StringValuePtr(v) STR2CSTR(v)
++#endif
++#ifndef RSTRING_LEN
++# define RSTRING_LEN(s) (RSTRING(s)->len)
++#endif
++
+
+ VALUE ccuriaerror;
+ VALUE ccuriaerror_ENOERR;
+@@ -233,7 +240,7 @@
+ const char *name;
+ int index, omode, bnum, dnum;
+ if((index = getnewindex()) == -1) myerror(DP_EMISC);
+- name = STR2CSTR(vname);
++ name = StringValuePtr(vname);
+ FIXNUM_P(vomode);
+ omode = FIX2INT(vomode);
+ FIXNUM_P(vbnum);
+@@ -276,10 +283,10 @@
+ int index, ksiz, vsiz, dmode;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
+- vbuf = STR2CSTR(vval);
+- vsiz = RSTRING(vval)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
++ vbuf = StringValuePtr(vval);
++ vsiz = RSTRING_LEN(vval);
+ FIXNUM_P(vdmode);
+ dmode = FIX2INT(vdmode);
+ curia = crtable[index];
+@@ -297,8 +304,8 @@
+ int index, ksiz;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ curia = crtable[index];
+ if(!crout(curia, kbuf, ksiz)){
+ if(crsltable[index] && dpecode == DP_ENOITEM) return Qfalse;
+@@ -316,8 +323,8 @@
+ VALUE vval;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ FIXNUM_P(vstart);
+ start = FIX2INT(vstart);
+ FIXNUM_P(vmax);
+@@ -339,8 +346,8 @@
+ int index, ksiz, vsiz;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ curia = crtable[index];
+ if((vsiz = crvsiz(curia, kbuf, ksiz)) == -1){
+ if(crsltable[index] && dpecode == DP_ENOITEM) return INT2FIX(-1);
+--- qdbm-1.8.78.orig/ruby/curia/rbcrtest
++++ qdbm-1.8.78/ruby/curia/rbcrtest
+@@ -21,7 +21,7 @@
+
+ # main routine
+ def main()
+- $0.gsub!(/.*\//, "")
++ $0 = $0.gsub(/.*\//, "")
+ (ARGV.length >= 1) || usage()
+ if(ARGV[0] == "write")
+ rv = runwrite()
+@@ -283,7 +283,7 @@
+
+
+ # execute main
+-$0.gsub!(/.*\//, "")
++$0 = $0.gsub(/.*\//, "")
+ exit(main())
+
+
+Only in qdbm-1.8.78/ruby/depot: mkmf.log
+--- qdbm-1.8.78.orig/ruby/depot/mod_depot.c
++++ qdbm-1.8.78/ruby/depot/mod_depot.c
+@@ -23,6 +23,13 @@
+
+ #define MAXOPEN 1024
+
++#ifndef StringValuePtr
++# define StringValuePtr(v) STR2CSTR(v)
++#endif
++#ifndef RSTRING_LEN
++# define RSTRING_LEN(s) (RSTRING(s)->len)
++#endif
++
+
+ VALUE cdepoterror;
+ VALUE cdepoterror_ENOERR;
+@@ -232,7 +239,7 @@
+ const char *name;
+ int index, omode, bnum;
+ if((index = getnewindex()) == -1) myerror(DP_EMISC);
+- name = STR2CSTR(vname);
++ name = StringValuePtr(vname);
+ FIXNUM_P(vomode);
+ omode = FIX2INT(vomode);
+ FIXNUM_P(vbnum);
+@@ -273,10 +280,10 @@
+ int index, ksiz, vsiz, dmode;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
+- vbuf = STR2CSTR(vval);
+- vsiz = RSTRING(vval)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
++ vbuf = StringValuePtr(vval);
++ vsiz = RSTRING_LEN(vval);
+ FIXNUM_P(vdmode);
+ dmode = FIX2INT(vdmode);
+ depot = dptable[index];
+@@ -294,8 +301,8 @@
+ int index, ksiz;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ depot = dptable[index];
+ if(!dpout(depot, kbuf, ksiz)){
+ if(dpsltable[index] && dpecode == DP_ENOITEM) return Qfalse;
+@@ -313,8 +320,8 @@
+ VALUE vval;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ FIXNUM_P(vstart);
+ start = FIX2INT(vstart);
+ FIXNUM_P(vmax);
+@@ -336,8 +343,8 @@
+ int index, ksiz, vsiz;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ depot = dptable[index];
+ if((vsiz = dpvsiz(depot, kbuf, ksiz)) == -1){
+ if(dpsltable[index] && dpecode == DP_ENOITEM) return INT2FIX(-1);
+--- qdbm-1.8.78.orig/ruby/depot/rbdptest
++++ qdbm-1.8.78/ruby/depot/rbdptest
+@@ -21,7 +21,7 @@
+
+ # main routine
+ def main()
+- $0.gsub!(/.*\//, "")
++ $0 = $0.gsub(/.*\//, "")
+ (ARGV.length >= 1) || usage()
+ if(ARGV[0] == "write")
+ rv = runwrite()
+@@ -278,7 +278,7 @@
+
+
+ # execute main
+-$0.gsub!(/.*\//, "")
++$0 = $0.gsub(/.*\//, "")
+ exit(main())
+
+
+--- qdbm-1.8.78.orig/ruby/myrbdoc
++++ qdbm-1.8.78/ruby/myrbdoc
+@@ -186,7 +186,7 @@
+
+
+ # execute main
+-#$0.gsub!(/.*\//, "")
++#$0 = $0.gsub(/.*\//, "")
+ exit(main())
+
+
+--- qdbm-1.8.78.orig/ruby/villa/mod_villa.c
++++ qdbm-1.8.78/ruby/villa/mod_villa.c
+@@ -25,6 +25,13 @@
+
+ #define MAXOPEN 1024
+
++#ifndef StringValuePtr
++# define StringValuePtr(v) STR2CSTR(v)
++#endif
++#ifndef RSTRING_LEN
++# define RSTRING_LEN(s) (RSTRING(s)->len)
++#endif
++
+
+ VALUE cvillaerror;
+ VALUE cvillaerror_ENOERR;
+@@ -304,7 +311,7 @@
+ int index, omode, cmode;
+ VLCFUNC cmp;
+ if((index = getnewindex()) == -1) myerror(DP_EMISC);
+- name = STR2CSTR(vname);
++ name = StringValuePtr(vname);
+ FIXNUM_P(vomode);
+ omode = FIX2INT(vomode);
+ FIXNUM_P(vcmode);
+@@ -352,10 +359,10 @@
+ int index, ksiz, vsiz, dmode;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
+- vbuf = STR2CSTR(vval);
+- vsiz = RSTRING(vval)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
++ vbuf = StringValuePtr(vval);
++ vsiz = RSTRING_LEN(vval);
+ FIXNUM_P(vdmode);
+ dmode = FIX2INT(vdmode);
+ villa = vltable[index];
+@@ -373,8 +380,8 @@
+ int index, ksiz;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ villa = vltable[index];
+ if(!vlout(villa, kbuf, ksiz)){
+ if(vlsltable[index] && dpecode == DP_ENOITEM) return Qfalse;
+@@ -391,8 +398,8 @@
+ VALUE vval;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ villa = vltable[index];
+ if(!(vbuf = vlget(villa, kbuf, ksiz, &vsiz))){
+ if(vlsltable[index] && dpecode == DP_ENOITEM) return Qnil;
+@@ -409,8 +416,8 @@
+ int index, ksiz, vsiz;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ villa = vltable[index];
+ if((vsiz = vlvsiz(villa, kbuf, ksiz)) == -1){
+ if(vlsltable[index] && dpecode == DP_ENOITEM) return INT2FIX(-1);
+@@ -426,8 +433,8 @@
+ int index, ksiz, vnum;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ villa = vltable[index];
+ vnum = vlvnum(villa, kbuf, ksiz);
+ return INT2FIX(vnum);
+@@ -497,8 +504,8 @@
+ VALUE vval;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- kbuf = STR2CSTR(vkey);
+- ksiz = RSTRING(vkey)->len;
++ kbuf = StringValuePtr(vkey);
++ ksiz = RSTRING_LEN(vkey);
+ FIXNUM_P(vjmode);
+ jmode = FIX2INT(vjmode);
+ villa = vltable[index];
+@@ -551,8 +558,8 @@
+ int index, vsiz, cpmode;
+ FIXNUM_P(vindex);
+ if((index = FIX2INT(vindex)) == -1) myerror(DP_EMISC);
+- vbuf = STR2CSTR(vval);
+- vsiz = RSTRING(vval)->len;
++ vbuf = StringValuePtr(vval);
++ vsiz = RSTRING_LEN(vval);
+ FIXNUM_P(vcpmode);
+ cpmode = FIX2INT(vcpmode);
+ villa = vltable[index];
+--- qdbm-1.8.78.orig/ruby/villa/rbvltest
++++ qdbm-1.8.78/ruby/villa/rbvltest
+@@ -21,7 +21,7 @@
+
+ # main routine
+ def main()
+- $0.gsub!(/.*\//, "")
++ $0 = $0.gsub(/.*\//, "")
+ (ARGV.length >= 1) || usage()
+ if(ARGV[0] == "write")
+ rv = runwrite()
+@@ -280,7 +280,7 @@
+
+
+ # execute main
+-$0.gsub!(/.*\//, "")
++$0 = $0.gsub(/.*\//, "")
+ exit(main())
+
+
diff --git a/dev-db/qdbm/qdbm-1.8.78-r1.ebuild b/dev-db/qdbm/qdbm-1.8.78-r1.ebuild
index c596a054425b..ae14683e6191 100644
--- a/dev-db/qdbm/qdbm-1.8.78-r1.ebuild
+++ b/dev-db/qdbm/qdbm-1.8.78-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/qdbm/qdbm-1.8.78-r1.ebuild,v 1.9 2012/05/28 13:58:16 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/qdbm/qdbm-1.8.78-r1.ebuild,v 1.10 2012/10/28 07:53:43 hattya Exp $
EAPI="4"
@@ -25,6 +25,7 @@ DEPEND="${RDEPEND}
src_prepare() {
epatch "${FILESDIR}"/${PN}-runpath.diff
epatch "${FILESDIR}"/${PN}-perl-runpath-vendor.diff
+ epatch "${FILESDIR}"/${PN}-ruby19.diff
# apply flags
sed -i "/^CFLAGS/s|$| ${CFLAGS}|" Makefile.in
sed -i "/^OPTIMIZE/s|$| ${CFLAGS}|" perl/Makefile.in