Add a patch for Ruby's GC processing: [ruby-dev:40823]. Bump PKGREVISION.diff -r1.28 -r1.29 pkgsrc/devel/swig/Makefile
(taca)
@@ -1,16 +1,17 @@ | @@ -1,16 +1,17 @@ | |||
1 | # $NetBSD: Makefile,v 1.28 2010/02/04 16:10:47 taca Exp $ | 1 | # $NetBSD: Makefile,v 1.29 2010/04/12 13:57:59 taca Exp $ | |
2 | 2 | |||
3 | DISTNAME= swig-1.3.36 | 3 | DISTNAME= swig-1.3.36 | |
4 | PKGREVISION= 1 | |||
4 | CATEGORIES= devel | 5 | CATEGORIES= devel | |
5 | MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=swig/} | 6 | MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=swig/} | |
6 | 7 | |||
7 | # | 8 | # | |
8 | # 1.3.37 has a bug where .py files are written to the directory of the | 9 | # 1.3.37 has a bug where .py files are written to the directory of the | |
9 | # .i file instead of where the output is supposed to go, and this | 10 | # .i file instead of where the output is supposed to go, and this | |
10 | # breaks gnuradio. Please try to contact gdt@netbsd.org before | 11 | # breaks gnuradio. Please try to contact gdt@netbsd.org before | |
11 | # updating to 1.3.37. See message on discuss-gnuradio: | 12 | # updating to 1.3.37. See message on discuss-gnuradio: | |
12 | # Message-Id: <FA0E4567-C660-4C30-B604-2FA000330874@alum.mit.edu> | 13 | # Message-Id: <FA0E4567-C660-4C30-B604-2FA000330874@alum.mit.edu> | |
13 | # | 14 | # | |
14 | # x11/ruby-wxruby-2.0.1 requires 1.3.32 for Ruby 1.8 and 1.3.37 for | 15 | # x11/ruby-wxruby-2.0.1 requires 1.3.32 for Ruby 1.8 and 1.3.37 for | |
15 | # Ruby 1.9. And SWIG 1.3.39 introduced some incompatibility with | 16 | # Ruby 1.9. And SWIG 1.3.39 introduced some incompatibility with | |
16 | # wxRuby, sigh. | 17 | # wxRuby, sigh. |
@@ -1,7 +1,8 @@ | @@ -1,7 +1,8 @@ | |||
1 | $NetBSD: distinfo,v 1.10 2010/02/04 15:39:39 taca Exp $ | 1 | $NetBSD: distinfo,v 1.11 2010/04/12 13:57:59 taca Exp $ | |
2 | 2 | |||
3 | SHA1 (swig-1.3.36.tar.gz) = eed715da3200f45cfe688a64ab6630eadf118ae4 | 3 | SHA1 (swig-1.3.36.tar.gz) = eed715da3200f45cfe688a64ab6630eadf118ae4 | |
4 | RMD160 (swig-1.3.36.tar.gz) = bd57f6837de1dc3aebefd9ad23a52235deefcd33 | 4 | RMD160 (swig-1.3.36.tar.gz) = bd57f6837de1dc3aebefd9ad23a52235deefcd33 | |
5 | Size (swig-1.3.36.tar.gz) = 4604982 bytes | 5 | Size (swig-1.3.36.tar.gz) = 4604982 bytes | |
6 | SHA1 (patch-aa) = 66374c0708cfda23810bd5744e0c4bb0abc605f5 | 6 | SHA1 (patch-aa) = 66374c0708cfda23810bd5744e0c4bb0abc605f5 | |
7 | SHA1 (patch-ab) = c690480ad10256c7198fc19699557e0b3f46b087 | 7 | SHA1 (patch-ab) = c690480ad10256c7198fc19699557e0b3f46b087 | |
8 | SHA1 (patch-ad) = f5787be95bb896cdba0f42587c4f586caed9b7a2 |
$NetBSD: patch-ad,v 1.1 2010/04/12 13:57:59 taca Exp $
* Fix GC mark processing: [ruby-dev:40823]
--- Lib/ruby/rubycontainer.swg.orig 2008-06-21 20:45:32.000000000 +0000
+++ Lib/ruby/rubycontainer.swg
@@ -1112,9 +1112,8 @@ namespace swig {
int i = 0;
for (const_iterator it = seq.begin();
it != seq.end(); ++it, ++i) {
- RARRAY_PTR(obj)[i] = swig::from< value_type >(*it);
+ rb_ary_push(obj, swig::from< value_type >(*it));
}
- RARRAY_LEN(obj) = size;
rb_obj_freeze(obj); // treat as immutable result
return obj;
} else {