From a928fe07151ac9b8babce85f4d69bf893e6fc793 Mon Sep 17 00:00:00 2001 From: Juerg Billeter Date: Sun, 11 May 2008 10:38:12 +0000 Subject: [PATCH] Move dynamic module loading support into separate VAPI file and improve 2008-05-11 Juerg Billeter * vapi/Makefile.am: * vapi/glib-2.0.vapi: * vapi/gmodule-2.0.vapi: * vapi/gstreamer-0.10.deps: Move dynamic module loading support into separate VAPI file and improve bindings, fixes bug 531583 svn path=/trunk/; revision=1362 --- ChangeLog | 10 ++++++++++ vapi/Makefile.am | 2 ++ vapi/glib-2.0.vapi | 22 +--------------------- vapi/gmodule-2.0.vapi | 45 +++++++++++++++++++++++++++++++++++++++++++++ vapi/gstreamer-0.10.deps | 1 + 5 files changed, 59 insertions(+), 21 deletions(-) create mode 100644 vapi/gmodule-2.0.vapi create mode 100644 vapi/gstreamer-0.10.deps diff --git a/ChangeLog b/ChangeLog index 9c619a2..46a023f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,15 @@ 2008-05-11 Jürg Billeter + * vapi/Makefile.am: + * vapi/glib-2.0.vapi: + * vapi/gmodule-2.0.vapi: + * vapi/gstreamer-0.10.deps: + + Move dynamic module loading support into separate VAPI file and + improve bindings, fixes bug 531583 + +2008-05-11 Jürg Billeter + * vapi/glib-2.0.vapi: add g_strv_length binding 2008-05-11 Jürg Billeter diff --git a/vapi/Makefile.am b/vapi/Makefile.am index d9b1a91..e8208da 100644 --- a/vapi/Makefile.am +++ b/vapi/Makefile.am @@ -25,12 +25,14 @@ dist_vapi_DATA = \ gio-2.0.vapi \ gio-unix-2.0.deps \ gio-unix-2.0.vapi \ + gmodule-2.0.vapi \ gnome-desktop-2.0.deps \ gnome-desktop-2.0.vapi \ gnome-keyring-1.vapi \ gnome-vfs-2.0.vapi \ goocanvas.deps \ goocanvas.vapi \ + gstreamer-0.10.deps \ gstreamer-0.10.vapi \ gstreamer-audio-0.10.deps \ gstreamer-audio-0.10.vapi \ diff --git a/vapi/glib-2.0.vapi b/vapi/glib-2.0.vapi index de9c30e..5195e45 100644 --- a/vapi/glib-2.0.vapi +++ b/vapi/glib-2.0.vapi @@ -1276,27 +1276,7 @@ namespace GLib { public int length_unlocked (); public void sort_unlocked (CompareDataFunc func, void* user_data); } - - /* Dynamic Loading of Modules */ - - [CCode (free_function = "g_module_close")] - public class Module { - public static bool supported (); - public static string build_path (string directory, string module_name); - public static Module open (string file_name, ModuleFlags @flags); - public bool symbol (string symbol_name, void** symbol); - public weak string name (); - public void make_resident (); - public static weak string error (); - } - - [CCode (cprefix = "G_MODULE_")] - public enum ModuleFlags { - BIND_LAZY, - BIND_LOCAL, - BIND_MASK - } - + /* Memory Allocation */ public static void* malloc (ulong n_bytes); diff --git a/vapi/gmodule-2.0.vapi b/vapi/gmodule-2.0.vapi new file mode 100644 index 0000000..063b2c9 --- /dev/null +++ b/vapi/gmodule-2.0.vapi @@ -0,0 +1,45 @@ +/* gmodule-2.0.vala + * + * Copyright (C) 2006-2008 Jürg Billeter + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Author: + * Jürg Billeter + */ + +[CCode (cprefix = "G", lower_case_cprefix = "g_", cheader_filename = "gmodule.h")] +namespace GLib { + /* Dynamic Loading of Modules */ + + [CCode (free_function = "g_module_close", cheader_filename = "gmodule.h")] + public class Module { + public static bool supported (); + public static string build_path (string? directory, string module_name); + public static Module? open (string? file_name, ModuleFlags flags); + public bool symbol (string symbol_name, out void* symbol); + public weak string name (); + public void make_resident (); + public static weak string error (); + } + + [CCode (cprefix = "G_MODULE_")] + public enum ModuleFlags { + BIND_LAZY, + BIND_LOCAL, + BIND_MASK + } +} + diff --git a/vapi/gstreamer-0.10.deps b/vapi/gstreamer-0.10.deps new file mode 100644 index 0000000..13f9b50 --- /dev/null +++ b/vapi/gstreamer-0.10.deps @@ -0,0 +1 @@ +gmodule-2.0 -- 2.7.4