Hi David!

On Fri, 10 Oct 2014 23:36:31 +0200 Michael Biebl <bi...@debian.org> wrote:
> Source: valabind
> Version: 0.8.0-2
> Severity: important
> 
> Hi,
> 
> valabind currently Build-Depends on valac-0.24 and/or libvala-0.24-dev.
> 
> The default vala version we ship in jessie is 0.26. As we don't want to
> ship several vala versions in jessie, we'd like to remove version 0.24.
> 
> Please update valabind accordingly to build against vala 0.26.
> 

Since you haven't replied yet to those two RC bugs, I decided to NMU
valabind to avoid that valabind is removed for jessie.

debdiff is attached.

Thanks for maintaining valabind,
Michael


-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
diff -Nru valabind-0.8.0/debian/changelog valabind-0.8.0/debian/changelog
--- valabind-0.8.0/debian/changelog     2014-07-17 00:23:50.000000000 +0200
+++ valabind-0.8.0/debian/changelog     2014-10-25 20:51:56.000000000 +0200
@@ -1,3 +1,11 @@
+valabind (0.8.0-2.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Switch to vala 0.26 and fix build failures with that newer version by
+    cherry-picking a patch from upstream. (Closes: #764762, #763248)
+
+ -- Michael Biebl <bi...@debian.org>  Sat, 25 Oct 2014 20:50:32 +0200
+
 valabind (0.8.0-2) unstable; urgency=low
 
   * debian/patches/add_java7_includes: Add default includes for a Debian
diff -Nru valabind-0.8.0/debian/control valabind-0.8.0/debian/control
--- valabind-0.8.0/debian/control       2014-06-23 11:31:29.000000000 +0200
+++ valabind-0.8.0/debian/control       2014-10-25 20:50:28.000000000 +0200
@@ -4,8 +4,8 @@
 Maintainer: David Martínez Moreno <en...@debian.org>
 Uploaders: Sebastian Reichel <s...@debian.org>
 Build-Depends: debhelper (>= 9),
-               libvala-0.24-dev,
-               valac (>= 0.24),
+               libvala-0.26-dev,
+               valac (>= 0.26),
                quilt
 Standards-Version: 3.9.5
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-vala/valabind.git
diff -Nru valabind-0.8.0/debian/patches/fix-build-against-0.26.patch 
valabind-0.8.0/debian/patches/fix-build-against-0.26.patch
--- valabind-0.8.0/debian/patches/fix-build-against-0.26.patch  1970-01-01 
01:00:00.000000000 +0100
+++ valabind-0.8.0/debian/patches/fix-build-against-0.26.patch  2014-10-25 
20:50:04.000000000 +0200
@@ -0,0 +1,171 @@
+From 62912d2d3b8287c0b18b16cc325d5e8e2882af1f Mon Sep 17 00:00:00 2001
+From: Ritesh Khadgaray <khadga...@gmail.com>
+Date: Sat, 16 Aug 2014 02:37:00 +0530
+Subject: [PATCH] fix build against 0.26
+
+---
+ ctypeswriter.vala  | 16 +++++++++++-----
+ dlangwriter.vala   |  6 +++++-
+ nodeffiwriter.vala |  8 ++++++--
+ swigwriter.vala    | 13 +++++++++----
+ utils.vala         | 13 +++++++++++++
+ 5 files changed, 44 insertions(+), 12 deletions(-)
+
+diff --git a/ctypeswriter.vala b/ctypeswriter.vala
+index 58b4f88..8de8947 100644
+--- a/ctypeswriter.vala
++++ b/ctypeswriter.vala
+@@ -1,4 +1,7 @@
++/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*-  */
++
+ /* Copyright GPLv3 - 2009-2014 - pancake */
++/* Copyleft 2014 -- Ritesh Khadgaray <khadga...@gmail.com> */
+ 
+ using Vala;
+ 
+@@ -204,9 +207,12 @@ public class CtypesWriter : ValabindWriter {
+               if (type is ArrayType) {
+                       ArrayType array = type as ArrayType;
+                       string element = type_name (array.element_type, 
retType);
+-                      if (!array.fixed_length)
++
++                      int len = array_length(array);
++                      if (len < 0 )
+                               return element; //+"*"; // FIXME should this be 
element+"[]"?
+-                      return "'"+element+"', * %d".printf (array.length); // 
FIXME will this work?
++                      
++                      return "'"+element+"', * %d".printf (len); // FIXME 
will this work?             
+               }
+ 
+               if (!ignoreRef && (type is ReferenceType)) {
+@@ -406,10 +412,10 @@ n++;
+                       ArrayType array = type as ArrayType;
+                       string element = type_name (array.element_type);
+                       warning ("Arrays not yet supported in ctypes bindings");
+-                      if (!array.fixed_length)
++                      int len = array_length(array);
++                      if (len < 0)
+                               field = element + "* " + f.name; // FIXME 
should this be element+"[]"?
+-                      field = "'%s', %s * %d".printf (f.name, element, 
array.length);
+-            stype = element;
++                      field = "'%s', %s * %d".printf (f.name, element, len);
+               } else {
+                       /* HACK to support generics. this is r2 specific */
+                       if (stype.index_of ("RListIter") != -1) {
+diff --git a/dlangwriter.vala b/dlangwriter.vala
+index 434502d..8fec7d5 100644
+--- a/dlangwriter.vala
++++ b/dlangwriter.vala
+@@ -1,4 +1,7 @@
++/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*-  */
++
+ /* Copyleft 2013 -- pancake // nopcode.org */
++/* Copyleft 2014 -- Ritesh Khadgaray <khadga...@gmail.com> */
+ 
+ using Vala;
+ 
+@@ -181,7 +184,8 @@ public class DlangWriter : ValabindWriter {
+                               type = get_ctype (type);
+                               if (f.variable_type is ArrayType) {
+                                       ArrayType array = f.variable_type as 
ArrayType;
+-                                      int sz = array.length;
++                                      int len = array_length(array);
++                                      int sz = len < 0 ? 0 : len;
+                                       defs += "  %s %s[%d];\n".printf (type, 
name, sz);
+                               } else {
+                                       defs += "  %s %s;\n".printf (type, 
name);
+diff --git a/nodeffiwriter.vala b/nodeffiwriter.vala
+index 9eddb2d..8c7951a 100644
+--- a/nodeffiwriter.vala
++++ b/nodeffiwriter.vala
+@@ -1,4 +1,7 @@
++/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*-  */
++
+ /* Copyleft 2012 -- pancake // eddyb */
++/* Copyleft 2014 -- Ritesh Khadgaray <khadga...@gmail.com> */
+ 
+ using Vala;
+ 
+@@ -65,9 +68,10 @@ public class NodeFFIWriter : ValabindWriter {
+               if (type is ArrayType) {
+                       ArrayType array = type as ArrayType;
+                       string element = type_name (array.element_type);
+-                      if (!array.fixed_length)
++                      int len = array_length(array);
++                      if (len < 0)
+                               return "_.ptr("+element+")";
+-                      return "_.array("+element+", %d)".printf (array.length);
++                      return "_.array("+element+", %d)".printf (len);
+               }
+ 
+               if (!ignoreRef && (type is ReferenceType)) {
+diff --git a/swigwriter.vala b/swigwriter.vala
+index 9e35599..279af1e 100644
+--- a/swigwriter.vala
++++ b/swigwriter.vala
+@@ -1,4 +1,7 @@
++/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*-  */
++
+ /* Copyleft 2009-2013 -- pancake, eddyb */
++/* Copyleft 2014 -- Ritesh Khadgaray <khadga...@gmail.com> */
+ 
+ using Vala;
+ 
+@@ -83,9 +86,10 @@ public class SwigWriter : ValabindWriter {
+               if (type is ArrayType) {
+                       ArrayType array = type as ArrayType;
+                       string element = type_name (array.element_type, 
retType);
+-                      if (!array.fixed_length)
++                      int len = array_length(array);
++                      if (len < 0 )
+                               return element+"*"; // FIXME should this be 
element+"[]"?
+-                      return element+"[%d]".printf (array.length); // FIXME 
will this work?
++                      return element+"[%d]".printf (len); // FIXME will this 
work?
+               }
+ 
+               if (!ignoreRef && (type is ReferenceType)) {
+@@ -257,9 +261,10 @@ public class SwigWriter : ValabindWriter {
+               if (type is ArrayType) {
+                       ArrayType array = type as ArrayType;
+                       string element = type_name (array.element_type);
+-                      if (!array.fixed_length)
++                      int len = array_length(array);  
++                      if (len < 0)
+                               field = element + "* " + f.name; // FIXME 
should this be element+"[]"?
+-                      field = element + " " + f.name + "[%d]".printf 
(array.length); // FIXME will this work?
++                      field = element + " " + f.name + "[%d]".printf (len); 
// FIXME will this work?
+               } else {
+                       /* HACK to support generics. this is r2 specific */
+                       string _type = type.to_string ();
+diff --git a/utils.vala b/utils.vala
+index d4bc505..ab1e633 100644
+--- a/utils.vala
++++ b/utils.vala
+@@ -1,4 +1,7 @@
++/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*-  */
++
+ /* Copyleft 2009-2012 -- pancake */
++/* Copyleft 2014 -- Ritesh Khadgaray <khadga...@gmail.com> */
+ 
+ public void notice (string msg) {
+       stderr.printf ("\x1b[34;1mNOTICE\x1b[0m %s\n", msg);
+@@ -13,6 +16,16 @@ public void error (string msg) {
+       Posix.exit (1);
+ }
+ 
++// TODO: check out if this is really required ?
++public int array_length (Vala.ArrayType array) {
++      if (array.fixed_length && array.length is Vala.IntegerLiteral) {
++              Vala.IntegerLiteral lit = (Vala.IntegerLiteral) array.length;
++              return int.parse (lit.value);
++      }
++
++      return -1;
++}
++
+ // TODO: make it reusable for other backends
+ public string get_enums_for (string str, GLib.List<string> includefiles) {
+       string enums_exec, enums_out = "";
+-- 
+2.1.1
+
diff -Nru valabind-0.8.0/debian/patches/series 
valabind-0.8.0/debian/patches/series
--- valabind-0.8.0/debian/patches/series        2014-07-17 00:15:38.000000000 
+0200
+++ valabind-0.8.0/debian/patches/series        2014-10-25 20:50:10.000000000 
+0200
@@ -1,2 +1,3 @@
 add_nolibpython.patch
 add_java7.includes.patch
+fix-build-against-0.26.patch

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to