Fri Oct 13 16:07:51 2017 UTC ()
databases/ruby-mysql28: Fix build problem on ruby24.


(taca)
diff -r1.1 -r1.2 pkgsrc/databases/ruby-mysql28/distinfo
diff -r0 -r1.1 pkgsrc/databases/ruby-mysql28/patches/patch-mysql.c

cvs diff -r1.1 -r1.2 pkgsrc/databases/ruby-mysql28/distinfo (expand / switch to unified diff)

--- pkgsrc/databases/ruby-mysql28/distinfo 2017/09/18 02:36:01 1.1
+++ pkgsrc/databases/ruby-mysql28/distinfo 2017/10/13 16:07:51 1.2
@@ -1,7 +1,8 @@ @@ -1,7 +1,8 @@
1$NetBSD: distinfo,v 1.1 2017/09/18 02:36:01 taca Exp $ 1$NetBSD: distinfo,v 1.2 2017/10/13 16:07:51 taca Exp $
2 2
3SHA1 (mysql-ruby-2.8.2.tar.gz) = c20ec0f41f19f11270963d9c9e0d5a2bba27801e 3SHA1 (mysql-ruby-2.8.2.tar.gz) = c20ec0f41f19f11270963d9c9e0d5a2bba27801e
4RMD160 (mysql-ruby-2.8.2.tar.gz) = 0cd9a6071f0878a5ab4b47d9a023066f5ae39955 4RMD160 (mysql-ruby-2.8.2.tar.gz) = 0cd9a6071f0878a5ab4b47d9a023066f5ae39955
5SHA512 (mysql-ruby-2.8.2.tar.gz) = f39bba5679031bab2d78bc5cb44bb00e7818c1f94e20af374e7b843ced85981e82f185f7442962728165abf9afa9f4d384e3ff6ca22c32320cf4bfa3af84c0e6 5SHA512 (mysql-ruby-2.8.2.tar.gz) = f39bba5679031bab2d78bc5cb44bb00e7818c1f94e20af374e7b843ced85981e82f185f7442962728165abf9afa9f4d384e3ff6ca22c32320cf4bfa3af84c0e6
6Size (mysql-ruby-2.8.2.tar.gz) = 32710 bytes 6Size (mysql-ruby-2.8.2.tar.gz) = 32710 bytes
7SHA1 (patch-extconf.rb) = 339b618a3057a3868448f971932b9231fd059404 7SHA1 (patch-extconf.rb) = 339b618a3057a3868448f971932b9231fd059404
 8SHA1 (patch-mysql.c) = 5072b514a748845a279539b5b526c66ae052b1ca

File Added: pkgsrc/databases/ruby-mysql28/patches/patch-mysql.c
$NetBSD: patch-mysql.c,v 1.1 2017/10/13 16:07:51 taca Exp $

* Fix build with ruby24.

--- mysql.c.orig	2010-02-11 10:42:54.000000000 +0000
+++ mysql.c
@@ -1317,7 +1317,11 @@ static VALUE stmt_bind_result(int argc, 
 	}
 	else if (argv[i] == rb_cString)
 	    s->result.bind[i].buffer_type = MYSQL_TYPE_STRING;
-	else if (argv[i] == rb_cNumeric || argv[i] == rb_cInteger || argv[i] == rb_cFixnum)
+	else if (argv[i] == rb_cNumeric || argv[i] == rb_cInteger
+#if RUBY_API_VERSION_MAJOR >=2 && RUBY_API_VERSION_MINOR < 4
+		 || argv[i] == rb_cFixnum
+#endif
+		)
 	    s->result.bind[i].buffer_type = MYSQL_TYPE_LONGLONG;
 	else if (argv[i] == rb_cFloat)
 	    s->result.bind[i].buffer_type = MYSQL_TYPE_DOUBLE;