[arch-commits] Commit in valabind/trunk (PKGBUILD fix-vala-0.36.patch)
Levente Polyak
anthraxx at archlinux.org
Sun Jul 16 20:45:30 UTC 2017
Date: Sunday, July 16, 2017 @ 20:45:29
Author: anthraxx
Revision: 245439
upgpkg: valabind 0.10.0-4 (vala 0.36 build)
Added:
valabind/trunk/fix-vala-0.36.patch
Modified:
valabind/trunk/PKGBUILD
---------------------+
PKGBUILD | 19 ++++++--
fix-vala-0.36.patch | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 127 insertions(+), 5 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2017-07-16 20:31:16 UTC (rev 245438)
+++ PKGBUILD 2017-07-16 20:45:29 UTC (rev 245439)
@@ -2,15 +2,24 @@
pkgname=valabind
pkgver=0.10.0
-pkgrel=3
-pkgdesc="Tool to parse vala or vapi files to transform them into swig interface files, C++, NodeJS-ffi or GIR"
-url="http://radare.org"
+pkgrel=4
+pkgdesc='Tool to parse vala or vapi files to transform them into swig interface files, C++, NodeJS-ffi or GIR'
+url='http://radare.org'
arch=('i686' 'x86_64')
license=('GPL3')
depends=('vala' 'swig' 'sh')
-source=(${pkgname}-${pkgver}.tar.gz::https://github.com/radare/${pkgname}/archive/${pkgver}.tar.gz)
-sha512sums=('8a1cb5d9c0960df0832d7c72a5204a24ec56f7ced9defe80636670502d6807db63af31fb3d0b0970bb35e27c907455270aa1b898ab1a8818373a271849fb388d')
+source=(${pkgname}-${pkgver}.tar.gz::https://github.com/radare/${pkgname}/archive/${pkgver}.tar.gz
+ fix-vala-0.36.patch)
+sha256sums=('dbc792b7f7c93cbc1c0187c456f793437ccce980b24484ade95b507e2ca30f25'
+ '5349bf19843a25a765242e9bcbdfd34d419708565070785ccb02a6b6aa7451ed')
+sha512sums=('8a1cb5d9c0960df0832d7c72a5204a24ec56f7ced9defe80636670502d6807db63af31fb3d0b0970bb35e27c907455270aa1b898ab1a8818373a271849fb388d'
+ 'faaf6a235336aa79f3d697618d71d5625f09613bdfc9e016b449ff4e0007746f4107a7825386ea075906b705d944213faa50b705595c249d2e61fcd516e1f4a3')
+prepare() {
+ cd ${pkgname}-${pkgver}
+ patch -p1 < "${srcdir}/fix-vala-0.36.patch"
+}
+
build() {
cd ${pkgname}-${pkgver}
make
Added: fix-vala-0.36.patch
===================================================================
--- fix-vala-0.36.patch (rev 0)
+++ fix-vala-0.36.patch 2017-07-16 20:45:29 UTC (rev 245439)
@@ -0,0 +1,113 @@
+From e94669f768217bc9b464c8cc34e14e081e8a11f6 Mon Sep 17 00:00:00 2001
+From: pancake <pancake at nopcode.org>
+Date: Wed, 10 May 2017 18:20:23 +0200
+Subject: [PATCH] Initial support for Meson and support vala 0.36.3
+Subject: [PATCH] Fix build for Vala-git (future 0.36)
+
+---
+ ctypeswriter.vala | 11 ++++++++---
+ gowriter.vala | 14 ++------------
+ 2 files changed, 41 insertions(+), 16 deletions(-)
+ create mode 100644 meson.build
+
+diff --git a/ctypeswriter.vala b/ctypeswriter.vala
+index 06b6db2..a708acd 100644
+--- a/ctypeswriter.vala
++++ b/ctypeswriter.vala
+@@ -109,12 +109,14 @@ private class CtypeClass {
+ deps.append (d);
+ }
+
++/*
+ public bool depends_on(string d) {
+ foreach (var s in deps)
+ if (s == d)
+ return true;
+ return false;
+ }
++*/
+
+ public string to_string() {
+ return this.text;
+@@ -217,8 +219,9 @@ public class CtypesWriter : ValabindWriter {
+ if (!ignoreRef && (type is ReferenceType)) {
+ string unref_type = type_name (type, retType, true);
+ // HACK just check for the string class instead (how?)
+- if (unref_type == "char*" || unref_type == "const char*")
++ if (unref_type == "char*" || unref_type == "const char*") {
+ return unref_type;
++ }
+ // FIXME should it be & under C++?
+ return unref_type; //+"_p"; //+"*";
+ }
+@@ -319,10 +322,12 @@ public class CtypesWriter : ValabindWriter {
+ visit_struct_or_class (c, name, c.get_fields (), c.get_methods (), c.get_delegates ());
+
+ /* walk nested structs and classes */
+- foreach (Struct s in c.get_structs ())
++ foreach (Struct s in c.get_structs ()) {
+ s.accept (this);
+- foreach (Class k in c.get_classes ())
++ }
++ foreach (Class k in c.get_classes ()) {
+ k.accept (this);
++ }
+ /* TODO: add support for freefun in destructor
+ string? freefun = null;
+ if (CCodeBaseModule.is_reference_counting (c))
+diff --git a/gowriter.vala b/gowriter.vala
+index 5a8de23..810aa52 100644
+--- a/gowriter.vala
++++ b/gowriter.vala
+@@ -14,10 +14,7 @@ public class GenericClassFinder : ValabindWriter {
+ GLib.HashTable<string, GLib.HashTable<string, GLib.List<DataType>>> generic_classes = new GLib.HashTable<string, GLib.HashTable<string, GLib.List<DataType>>> (GLib.str_hash, GLib.str_equal);
+
+ inline bool is_generic(DataType d) {
+- foreach (var t in d.get_type_arguments()) {
+- return true;
+- }
+- return false;
++ return (d.get_type_arguments().size > 0);
+ }
+
+ inline bool is_glib(DataType d) {
+@@ -218,14 +215,7 @@ public class GoNamer {
+
+ private string mangle_datatype(DataType d) {
+ string ret = d.data_type.name; // i think should unify with get_type_declaration?
+-
+- bool has_parameters = false;
+- foreach(var p in d.get_type_arguments()) {
+- has_parameters = true;
+- break;
+- }
+-
+- if (has_parameters) {
++ if (d.get_type_arguments().size > 0) {
+ foreach(var dd in d.get_type_arguments()) {
+ ret += "_";
+ ret += mangle_datatype(dd);
+--- a/cxxwriter.vala
++++ b/cxxwriter.vala
+@@ -157,7 +157,7 @@ public class CxxWriter : ValabindWriter {
+ }
+
+ public void walk_field (Field f) {
+- if (f.get_ctype () == null) {
++ if (f.get_attribute_string ("CCode", "type") == null) {
+ //warning (
+ // "Cannot resolve type for field '%s'".printf (f.get_cname ()));
+ } else {
+diff --git a/dlangwriter.vala b/dlangwriter.vala
+index 8d42676..898d3ca 100644
+--- a/dlangwriter.vala
++++ b/dlangwriter.vala
+@@ -167,7 +167,7 @@ public class DlangWriter : ValabindWriter {
+ }
+
+ public void walk_field (Field f) {
+- if (f.get_ctype () == null) {
++ if (f.get_attribute_string ("CCode", "type") == null) {
+ //warning (
+ // "Cannot resolve type for field '%s'".printf (f.get_cname ()));
+ } else {
More information about the arch-commits
mailing list