summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authortaca <taca@pkgsrc.org>2005-03-06 16:52:39 +0000
committertaca <taca@pkgsrc.org>2005-03-06 16:52:39 +0000
commit079f54e1fdb2b365fc00e81c251d205c9f3ef637 (patch)
treeef4c5f5b01efacbaae7807bf299619affc758c43 /devel
parentd0cab82177cd6f281845eb8ee82a5668d852315f (diff)
downloadpkgsrc-079f54e1fdb2b365fc00e81c251d205c9f3ef637.tar.gz
Revive separated ruby packages, ruby-dbm, ruby-zlib, ruby-digest and
ruby-openssl with bump PKGREVISION.
Diffstat (limited to 'devel')
-rw-r--r--devel/ruby-zlib/DESCR2
-rw-r--r--devel/ruby-zlib/Makefile33
-rw-r--r--devel/ruby-zlib/PLIST4
-rw-r--r--devel/ruby-zlib/distinfo5
-rw-r--r--devel/ruby-zlib/patches/patch-aa166
5 files changed, 210 insertions, 0 deletions
diff --git a/devel/ruby-zlib/DESCR b/devel/ruby-zlib/DESCR
new file mode 100644
index 00000000000..424449f0c80
--- /dev/null
+++ b/devel/ruby-zlib/DESCR
@@ -0,0 +1,2 @@
+This is an extension library to use zlib from Ruby. Ruby/zlib has
+original .gz file handler of its own.
diff --git a/devel/ruby-zlib/Makefile b/devel/ruby-zlib/Makefile
new file mode 100644
index 00000000000..be76c101012
--- /dev/null
+++ b/devel/ruby-zlib/Makefile
@@ -0,0 +1,33 @@
+# $NetBSD: Makefile,v 1.7 2005/03/06 16:52:39 taca Exp $
+# FreeBSD: ports/archivers/ruby-zlib/Makefile,v 1.7 2000/09/26 22:01:12 knu Exp
+
+DISTNAME= ${RUBY_DISTNAME}
+PKGNAME= ${RUBY_PKGPREFIX}-zlib-${RUBY_VERSION}
+PKGREVISION= 1
+CATEGORIES= devel ruby
+MASTER_SITES= ${MASTER_SITE_RUBY}
+
+MAINTAINER= taca@NetBSD.org
+HOMEPAGE= ${RUBY_HOMEPAGE}
+COMMENT= Zlib library for Ruby
+
+RUBY_HAS_ARCHLIB= yes
+RUBY_VERSION_SUPPORTED= 18
+USE_BUILDLINK3= yes
+USE_RUBY_EXTCONF= yes
+EXTRACT_ELEMENTS= ${RUBY_DISTNAME}/ext/zlib
+WRKSRC= ${RUBY_WRKSRC}/ext/zlib
+
+INSTALL_TARGET= site-install
+DOCS= doc/zlib.rd
+
+post-install:
+ ${INSTALL_DATA_DIR} ${RUBY_DOCDIR}/zlib
+.for f in ${DOCS}
+ ${INSTALL_DATA} ${WRKSRC}/${f} ${RUBY_DOCDIR}/zlib
+.endfor
+
+.include "../../lang/ruby/modules.mk"
+.include "../../lang/ruby/Makefile.common"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/ruby-zlib/PLIST b/devel/ruby-zlib/PLIST
new file mode 100644
index 00000000000..34aa744828e
--- /dev/null
+++ b/devel/ruby-zlib/PLIST
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST,v 1.5 2005/03/06 16:52:39 taca Exp $
+${RUBY_SITEARCHLIBDIR}/zlib.${RUBY_DLEXT}
+${RUBY_DOCDIR}/zlib/zlib.rd
+@dirrm ${RUBY_DOCDIR}/zlib
diff --git a/devel/ruby-zlib/distinfo b/devel/ruby-zlib/distinfo
new file mode 100644
index 00000000000..c5ee0ca1f6e
--- /dev/null
+++ b/devel/ruby-zlib/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.6 2005/03/06 16:52:39 taca Exp $
+
+SHA1 (ruby/ruby-1.8.2.tar.gz) = 409a917d3a0aba41f45bd053b767c85b2bc35ffa
+Size (ruby/ruby-1.8.2.tar.gz) = 3627349 bytes
+SHA1 (patch-aa) = 73d61daf90bf10ff3119166d175839352db76d37
diff --git a/devel/ruby-zlib/patches/patch-aa b/devel/ruby-zlib/patches/patch-aa
new file mode 100644
index 00000000000..60cf1ab1f47
--- /dev/null
+++ b/devel/ruby-zlib/patches/patch-aa
@@ -0,0 +1,166 @@
+$NetBSD: patch-aa,v 1.4 2005/03/06 16:52:40 taca Exp $
+
+--- zlib.c.orig 2004-12-18 16:37:01.000000000 +0900
++++ zlib.c
+@@ -55,7 +55,7 @@ static void zstream_reset_input _((struc
+ static void zstream_passthrough_input _((struct zstream*));
+ static VALUE zstream_detach_input _((struct zstream*));
+ static void zstream_reset _((struct zstream*));
+-static void zstream_end _((struct zstream*));
++static VALUE zstream_end _((struct zstream*));
+ static void zstream_run _((struct zstream*, Bytef*, uInt, int));
+ static VALUE zstream_sync _((struct zstream*, Bytef*, uInt));
+ static void zstream_mark _((struct zstream*));
+@@ -80,7 +80,8 @@ static VALUE rb_zstream_closed_p _((VALU
+
+ static VALUE rb_deflate_s_allocate _((VALUE));
+ static VALUE rb_deflate_initialize _((int, VALUE*, VALUE));
+-static VALUE rb_deflate_clone _((VALUE));
++static VALUE rb_deflate_init_copy _((VALUE, VALUE));
++static VALUE deflate_run _((VALUE));
+ static VALUE rb_deflate_s_deflate _((int, VALUE*, VALUE));
+ static void do_deflate _((struct zstream*, VALUE, int));
+ static VALUE rb_deflate_deflate _((int, VALUE*, VALUE));
+@@ -89,6 +90,7 @@ static VALUE rb_deflate_flush _((int, VA
+ static VALUE rb_deflate_params _((VALUE, VALUE, VALUE));
+ static VALUE rb_deflate_set_dictionary _((VALUE, VALUE));
+
++static VALUE inflate_run _((VALUE));
+ static VALUE rb_inflate_s_allocate _((VALUE));
+ static VALUE rb_inflate_initialize _((int, VALUE*, VALUE));
+ static VALUE rb_inflate_s_inflate _((VALUE, VALUE));
+@@ -667,7 +669,7 @@ zstream_reset(z)
+ zstream_reset_input(z);
+ }
+
+-static void
++static VALUE
+ zstream_end(z)
+ struct zstream *z;
+ {
+@@ -692,6 +694,7 @@ zstream_end(z)
+ raise_zlib_error(err, z->stream.msg);
+ }
+ z->flags = 0;
++ return Qnil;
+ }
+
+ static void
+@@ -1152,26 +1155,31 @@ rb_deflate_initialize(argc, argv, obj)
+ * Duplicates the deflate stream.
+ */
+ static VALUE
+-rb_deflate_clone(obj)
+- VALUE obj;
++rb_deflate_init_copy(self, orig)
++ VALUE self, orig;
+ {
+- struct zstream *z = get_zstream(obj);
+- struct zstream *z2;
+- VALUE clone;
++ struct zstream *z1 = get_zstream(self);
++ struct zstream *z2 = get_zstream(orig);
+ int err;
+
+- clone = zstream_deflate_new(rb_class_of(obj));
+- Data_Get_Struct(clone, struct zstream, z2);
+-
+- err = deflateCopy(&z2->stream, &z->stream);
++ err = deflateCopy(&z1->stream, &z2->stream);
+ if (err != Z_OK) {
+ raise_zlib_error(err, 0);
+ }
++ z1->flags = z2->flags;
+
+- z2->flags = z->flags;
+- CLONESETUP(clone, obj);
+- OBJ_INFECT(clone, obj);
+- return clone;
++ return self;
++}
++
++static VALUE
++deflate_run(args)
++ VALUE args;
++{
++ struct zstream *z = (struct zstream *)((VALUE *)args)[0];
++ VALUE src = ((VALUE *)args)[1];
++
++ zstream_run(z, RSTRING(src)->ptr, RSTRING(src)->len, Z_FINISH);
++ return zstream_detach_buffer(z);
+ }
+
+ /*
+@@ -1201,7 +1209,7 @@ rb_deflate_s_deflate(argc, argv, klass)
+ VALUE klass;
+ {
+ struct zstream z;
+- VALUE src, level, dst;
++ VALUE src, level, dst, args[2];
+ int err, lev;
+
+ rb_scan_args(argc, argv, "11", &src, &level);
+@@ -1215,9 +1223,9 @@ rb_deflate_s_deflate(argc, argv, klass)
+ }
+ ZSTREAM_READY(&z);
+
+- zstream_run(&z, RSTRING(src)->ptr, RSTRING(src)->len, Z_FINISH);
+- dst = zstream_detach_buffer(&z);
+- zstream_end(&z);
++ args[0] = (VALUE)&z;
++ args[1] = src;
++ dst = rb_ensure(deflate_run, (VALUE)args, zstream_end, (VALUE)&z);
+
+ OBJ_INFECT(dst, src);
+ return dst;
+@@ -1239,6 +1247,18 @@ do_deflate(z, src, flush)
+ }
+ }
+
++static VALUE
++inflate_run(args)
++ VALUE args;
++{
++ struct zstream *z = (struct zstream *)((VALUE *)args)[0];
++ VALUE src = ((VALUE *)args)[1];
++
++ zstream_run(z, RSTRING(src)->ptr, RSTRING(src)->len, Z_SYNC_FLUSH);
++ zstream_run(z, "", 0, Z_FINISH); /* for checking errors */
++ return zstream_detach_buffer(z);
++}
++
+ /*
+ * call-seq: deflate(string[, flush])
+ *
+@@ -1452,7 +1472,7 @@ rb_inflate_s_inflate(obj, src)
+ VALUE obj, src;
+ {
+ struct zstream z;
+- VALUE dst;
++ VALUE dst, args[2];
+ int err;
+
+ StringValue(src);
+@@ -1463,10 +1483,9 @@ rb_inflate_s_inflate(obj, src)
+ }
+ ZSTREAM_READY(&z);
+
+- zstream_run(&z, RSTRING(src)->ptr, RSTRING(src)->len, Z_SYNC_FLUSH);
+- zstream_run(&z, "", 0, Z_FINISH); /* for checking errors */
+- dst = zstream_detach_buffer(&z);
+- zstream_end(&z);
++ args[0] = (VALUE)&z;
++ args[1] = src;
++ dst = rb_ensure(inflate_run, (VALUE)args, zstream_end, (VALUE)&z);
+
+ OBJ_INFECT(dst, src);
+ return dst;
+@@ -3333,7 +3352,7 @@ void Init_zlib()
+ rb_define_singleton_method(cDeflate, "deflate", rb_deflate_s_deflate, -1);
+ rb_define_alloc_func(cDeflate, rb_deflate_s_allocate);
+ rb_define_method(cDeflate, "initialize", rb_deflate_initialize, -1);
+- rb_define_method(cDeflate, "clone", rb_deflate_clone, 0);
++ rb_define_method(cDeflate, "initialize_copy", rb_deflate_init_copy, 0);
+ rb_define_method(cDeflate, "deflate", rb_deflate_deflate, -1);
+ rb_define_method(cDeflate, "<<", rb_deflate_addstr, 1);
+ rb_define_method(cDeflate, "flush", rb_deflate_flush, -1);