From 34cf164aa28c45c15ecf39b855f2de833a9b7c2d Mon Sep 17 00:00:00 2001 From: TingPing Date: Wed, 5 Feb 2014 20:42:48 -0500 Subject: Use a single marshal file for entire project --- src/common/Makefile.am | 13 +++++++++++-- src/common/common.vcxproj | 11 +++++++---- src/common/common.vcxproj.filters | 9 +++++++++ src/common/dbus/Makefile.am | 7 +------ src/common/dbus/dbus-plugin.c | 8 ++++---- src/common/dbus/example.c | 4 ++-- src/common/dbus/marshallers.list | 1 - src/common/marshalers.list | 8 ++++++++ 8 files changed, 42 insertions(+), 19 deletions(-) delete mode 100644 src/common/dbus/marshallers.list create mode 100644 src/common/marshalers.list (limited to 'src/common') diff --git a/src/common/Makefile.am b/src/common/Makefile.am index 9c2d443e..8a177fa9 100644 --- a/src/common/Makefile.am +++ b/src/common/Makefile.am @@ -62,7 +62,7 @@ endif noinst_PROGRAMS = make-te libhexchatcommon_a_SOURCES = cfgfiles.c chanopt.c ctcp.c dcc.c hexchat.c \ - history.c ignore.c inbound.c modes.c $(msproxy_c) network.c notify.c \ + history.c ignore.c inbound.c marshal.c modes.c $(msproxy_c) network.c notify.c \ outbound.c plugin.c plugin-timer.c proto-irc.c server.c servlist.c \ $(ssl_c) text.c tree.c url.c userlist.c util.c libhexchatcommon_a_CFLAGS = $(LIBPROXY_CFLAGS) @@ -72,4 +72,13 @@ textenums.h: textevents.h textevents.h: textevents.in make-te $(AM_V_GEN) ./make-te < textevents.in > textevents.h 2> textenums.h -BUILT_SOURCES = textenums.h textevents.h +marshal.h: marshalers.list + $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=_hexchat_marshal --header $(srcdir)/marshalers.list > $@ + +marshal.c: marshalers.list + $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=_hexchat_marshal --body $(srcdir)/marshalers.list > $@ + + +BUILT_SOURCES = textenums.h textevents.h marshal.c marshal.h + +CLEANFILES = $(BUILT_SOURCES) diff --git a/src/common/common.vcxproj b/src/common/common.vcxproj index 720faae7..17a8d829 100644 --- a/src/common/common.vcxproj +++ b/src/common/common.vcxproj @@ -24,6 +24,7 @@ + @@ -56,6 +57,7 @@ + @@ -156,15 +158,16 @@ - - - +"$(DepsRoot)\bin\glib-genmarshal.exe" --prefix=_hexchat_marshal --header "$(ProjectDir)marshalers.list" > "$(ProjectDir)marshal.h" +"$(DepsRoot)\bin\glib-genmarshal.exe" --prefix=_hexchat_marshal --body "$(ProjectDir)marshalers.list" > "$(ProjectDir)marshal.c" + + ]]> \ No newline at end of file diff --git a/src/common/common.vcxproj.filters b/src/common/common.vcxproj.filters index d543992d..800d8daa 100644 --- a/src/common/common.vcxproj.filters +++ b/src/common/common.vcxproj.filters @@ -110,6 +110,9 @@ Header Files + + Header Files + @@ -187,5 +190,11 @@ Source Files + + Source Files + + + + \ No newline at end of file diff --git a/src/common/dbus/Makefile.am b/src/common/dbus/Makefile.am index bad6f611..4fa30452 100644 --- a/src/common/dbus/Makefile.am +++ b/src/common/dbus/Makefile.am @@ -7,12 +7,10 @@ libhexchatdbus_a_SOURCES = \ EXTRA_DIST = \ remote-object.xml \ - marshallers.list \ example.py \ org.hexchat.service.service.in BUILT_SOURCES = \ - marshallers.h \ remote-object-glue.h CLEANFILES = $(BUILT_SOURCES) @@ -20,15 +18,12 @@ CLEANFILES = $(BUILT_SOURCES) AM_CPPFLAGS = $(COMMON_CFLAGS) $(DBUS_CFLAGS) noinst_PROGRAMS = example -example_SOURCES = example.c +example_SOURCES = example.c example_LDADD = $(DBUS_LIBS) $(GLIB_LIBS) remote-object-glue.h: remote-object.xml $(AM_V_GEN) $(LIBTOOL) --mode=execute $(DBUS_BINDING_TOOL) --prefix=remote_object --mode=glib-server --output=$@ $< -marshallers.h: marshallers.list - $(AM_V_GEN) $(LIBTOOL) --mode=execute $(GLIB_GENMARSHAL) --header --body $< > $@ - # Dbus service file servicedir = $(DBUS_SERVICES_DIR) service_in_files = org.hexchat.service.service.in diff --git a/src/common/dbus/dbus-plugin.c b/src/common/dbus/dbus-plugin.c index 62b83bb1..ce079982 100644 --- a/src/common/dbus/dbus-plugin.c +++ b/src/common/dbus/dbus-plugin.c @@ -241,7 +241,7 @@ static gboolean remote_object_send_modes (RemoteObject *obj, GError **error); #include "remote-object-glue.h" -#include "marshallers.h" +#include "../marshal.h" /* Useful functions */ @@ -317,7 +317,7 @@ remote_object_class_init (RemoteObjectClass *klass) G_SIGNAL_RUN_LAST, 0, NULL, NULL, - g_cclosure_user_marshal_VOID__POINTER_POINTER_UINT_UINT, + _hexchat_marshal_VOID__POINTER_POINTER_UINT_UINT, G_TYPE_NONE, 4, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_UINT, G_TYPE_UINT); @@ -327,7 +327,7 @@ remote_object_class_init (RemoteObjectClass *klass) G_SIGNAL_RUN_LAST, 0, NULL, NULL, - g_cclosure_user_marshal_VOID__POINTER_POINTER_UINT_UINT, + _hexchat_marshal_VOID__POINTER_POINTER_UINT_UINT, G_TYPE_NONE, 4, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_UINT, G_TYPE_UINT); @@ -337,7 +337,7 @@ remote_object_class_init (RemoteObjectClass *klass) G_SIGNAL_RUN_LAST, 0, NULL, NULL, - g_cclosure_user_marshal_VOID__POINTER_POINTER_UINT_UINT, + _hexchat_marshal_VOID__POINTER_POINTER_UINT_UINT, G_TYPE_NONE, 3, G_TYPE_STRV, G_TYPE_UINT, G_TYPE_UINT); diff --git a/src/common/dbus/example.c b/src/common/dbus/example.c index ee1833d3..c3ad4ff3 100644 --- a/src/common/dbus/example.c +++ b/src/common/dbus/example.c @@ -22,7 +22,7 @@ #include #include #include -#include "marshallers.h" +#include "../marshal.c" #define DBUS_SERVICE "org.hexchat.service" #define DBUS_REMOTE "/org/hexchat/Remote" @@ -159,7 +159,7 @@ main (int argc, char **argv) g_print ("Server hook id=%d\n", server_id); dbus_g_object_register_marshaller ( - g_cclosure_user_marshal_VOID__POINTER_POINTER_UINT_UINT, + _hexchat_marshal_VOID__POINTER_POINTER_UINT_UINT, G_TYPE_NONE, G_TYPE_STRV, G_TYPE_STRV, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_INVALID); diff --git a/src/common/dbus/marshallers.list b/src/common/dbus/marshallers.list deleted file mode 100644 index bc3c4ad5..00000000 --- a/src/common/dbus/marshallers.list +++ /dev/null @@ -1 +0,0 @@ -VOID:POINTER,POINTER,UINT,UINT diff --git a/src/common/marshalers.list b/src/common/marshalers.list new file mode 100644 index 00000000..0cafca81 --- /dev/null +++ b/src/common/marshalers.list @@ -0,0 +1,8 @@ +# xtext +VOID:OBJECT,OBJECT +VOID:POINTER,POINTER +# sexy-entry +BOOLEAN:STRING +OBJECT:OBJECT,OBJECT +# dbus-plugin & dbus-example +VOID:POINTER,POINTER,UINT,UINT -- cgit 1.4.1