diff --git a/ChangeLog b/ChangeLog index 855cef6..d5da3d7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +Mon Jan 09 11:13:15 PST 2006 Christian Hammond + + * libnotify/Makefile.am: + * libnotify/Makefile.in: + A libnotify/notify-marshal.list: + D libnotify/notifymarshal.c: + D libnotify/notifymarshal.h: + * libnotify/notifynotification.c: + * configure.ac: + - Generate the marshal files automatically. We shouldn't be doing it + by hand. + Mon Jan 09 10:15:57 PST 2006 Christian Hammond * libnotify/Makefile.in: diff --git a/configure.ac b/configure.ac index 62d2142..c7c385f 100644 --- a/configure.ac +++ b/configure.ac @@ -107,6 +107,9 @@ AM_CONDITIONAL(HAVE_GDK, test "x$have_gdk" = "xyes") AC_SUBST(GDK_CFLAGS) AC_SUBST(GDK_LIBS) +GLIB_GENMARSHAL=`pkg-config --variable=glib_genmarshal glib-2.0` +AC_SUBST(GLIB_GENMARSHAL) + dnl dnl Check the D-BUS version. dnl diff --git a/libnotify/Makefile.am b/libnotify/Makefile.am index 70154c3..6a00b29 100644 --- a/libnotify/Makefile.am +++ b/libnotify/Makefile.am @@ -1,18 +1,23 @@ notifyincdir = $(includedir)/libnotify +MARSHAL_PREFIX = notify_marshal +MARSHAL_FILE = notify-marshal + lib_LTLIBRARIES = libnotify.la notifyinc_HEADERS = \ notify.h \ notifynotification.h \ - notifycommon.h \ - notifymarshal.h + notifycommon.h + +noinst_HEADERS = \ + notify-marshal.h libnotify_la_SOURCES = \ dbus-compat.h \ notify.c \ notifynotification.c \ - notifymarshal.c + notify-marshal.c libnotify_la_LIBADD = \ $(PACKAGE_LIBS) @@ -20,5 +25,20 @@ libnotify_la_LIBADD = \ libnotify_la_LDFLAGS = \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) +notify-marshal.h: notify-marshal.list + $(GLIB_GENMARSHAL) --prefix=$(MARSHAL_PREFIX) notify-marshal.list \ + --header > notify-marshal.h + +notify-marshal.c: notify-marshal.list + $(GLIB_GENMARSHAL) --prefix=$(MARSHAL_PREFIX) notify-marshal.list \ + --body > notify-marshal.c + +EXTRA_DIST = \ + notify-marshal.list + +CLEANFILES = \ + notify-marshal.c \ + notify-marshal.h + INCLUDES = \ $(PACKAGE_CFLAGS) diff --git a/libnotify/Makefile.in b/libnotify/Makefile.in index 518eb47..13b568a 100644 --- a/libnotify/Makefile.in +++ b/libnotify/Makefile.in @@ -40,8 +40,8 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = libnotify -DIST_COMMON = $(notifyinc_HEADERS) $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in +DIST_COMMON = $(noinst_HEADERS) $(notifyinc_HEADERS) \ + $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ @@ -61,7 +61,7 @@ LTLIBRARIES = $(lib_LTLIBRARIES) am__DEPENDENCIES_1 = libnotify_la_DEPENDENCIES = $(am__DEPENDENCIES_1) am_libnotify_la_OBJECTS = notify.lo notifynotification.lo \ - notifymarshal.lo + notify-marshal.lo libnotify_la_OBJECTS = $(am_libnotify_la_OBJECTS) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp @@ -77,7 +77,7 @@ LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ SOURCES = $(libnotify_la_SOURCES) DIST_SOURCES = $(libnotify_la_SOURCES) notifyincHEADERS_INSTALL = $(INSTALL_HEADER) -HEADERS = $(notifyinc_HEADERS) +HEADERS = $(noinst_HEADERS) $(notifyinc_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -112,6 +112,7 @@ F77 = @F77@ FFLAGS = @FFLAGS@ GDK_CFLAGS = @GDK_CFLAGS@ GDK_LIBS = @GDK_LIBS@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ HAVE_GDK_FALSE = @HAVE_GDK_FALSE@ HAVE_GDK_TRUE = @HAVE_GDK_TRUE@ INSTALL_DATA = @INSTALL_DATA@ @@ -190,18 +191,22 @@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ notifyincdir = $(includedir)/libnotify +MARSHAL_PREFIX = notify_marshal +MARSHAL_FILE = notify-marshal lib_LTLIBRARIES = libnotify.la notifyinc_HEADERS = \ notify.h \ notifynotification.h \ - notifycommon.h \ - notifymarshal.h + notifycommon.h + +noinst_HEADERS = \ + notify-marshal.h libnotify_la_SOURCES = \ dbus-compat.h \ notify.c \ notifynotification.c \ - notifymarshal.c + notify-marshal.c libnotify_la_LIBADD = \ $(PACKAGE_LIBS) @@ -209,6 +214,13 @@ libnotify_la_LIBADD = \ libnotify_la_LDFLAGS = \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) +EXTRA_DIST = \ + notify-marshal.list + +CLEANFILES = \ + notify-marshal.c \ + notify-marshal.h + INCLUDES = \ $(PACKAGE_CFLAGS) @@ -281,8 +293,8 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/notify-marshal.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/notify.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/notifymarshal.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/notifynotification.Plo@am__quote@ .c.o: @@ -432,6 +444,7 @@ install-strip: mostlyclean-generic: clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) @@ -505,6 +518,14 @@ uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES \ uninstall-info-am uninstall-libLTLIBRARIES \ uninstall-notifyincHEADERS + +notify-marshal.h: notify-marshal.list + $(GLIB_GENMARSHAL) --prefix=$(MARSHAL_PREFIX) notify-marshal.list \ + --header > notify-marshal.h + +notify-marshal.c: notify-marshal.list + $(GLIB_GENMARSHAL) --prefix=$(MARSHAL_PREFIX) notify-marshal.list \ + --body > notify-marshal.c # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff --git a/libnotify/notify-marshal.list b/libnotify/notify-marshal.list new file mode 100644 index 0000000..5ab45bf --- /dev/null +++ b/libnotify/notify-marshal.list @@ -0,0 +1 @@ +VOID:UINT,STRING diff --git a/libnotify/notifymarshal.c b/libnotify/notifymarshal.c deleted file mode 100644 index 40fa0b6..0000000 --- a/libnotify/notifymarshal.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * This program 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 program 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 main.c; if not, write to: - * The Free Software Foundation, Inc., - * 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#include "notifymarshal.h" - -void -_notify_marshal_VOID__UINT_STRING (GClosure *closure, - GValue *return_value, - guint n_param_values, - const GValue *param_values, - gpointer invocation_hint, - gpointer marshal_data) -{ - typedef void (*GMarshalFunc_VOID__UINT_STRING) (gpointer data1, - gpointer arg_1, - gpointer arg_2, - gpointer data2); - register GMarshalFunc_VOID__UINT_STRING callback; - register GCClosure *cc = (GCClosure*) closure; - register gpointer data1, data2; - - g_return_if_fail (n_param_values == 3); - - if (G_CCLOSURE_SWAP_DATA (closure)) - { - data1 = closure->data; - data2 = g_value_peek_pointer (param_values + 0); - } - else - { - data1 = g_value_peek_pointer (param_values + 0); - data2 = closure->data; - } - callback = (GMarshalFunc_VOID__UINT_STRING) (marshal_data ? marshal_data : cc->callback); - - callback (data1, - g_value_get_uint (param_values + 1), - g_value_get_string (param_values + 2), - data2); -} - diff --git a/libnotify/notifymarshal.h b/libnotify/notifymarshal.h deleted file mode 100644 index 8f441f0..0000000 --- a/libnotify/notifymarshal.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * This program 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 program 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 main.c; if not, write to: - * The Free Software Foundation, Inc., - * 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifndef __notify_marshal_MARSHAL_H__ -#define __notify_marshal_MARSHAL_H__ - -#include - -G_BEGIN_DECLS - -void -_notify_marshal_VOID__UINT_STRING (GClosure *closure, - GValue *return_value, - guint n_param_values, - const GValue *param_values, - gpointer invocation_hint, - gpointer marshal_data); - - -G_END_DECLS -#endif diff --git a/libnotify/notifynotification.c b/libnotify/notifynotification.c index ad6f773..08ac75e 100644 --- a/libnotify/notifynotification.c +++ b/libnotify/notifynotification.c @@ -21,7 +21,7 @@ #include "notify.h" #include "notifynotification.h" -#include "notifymarshal.h" +#include "notify-marshal.h" static void notify_notification_class_init (NotifyNotificationClass * klass); static void notify_notification_init (NotifyNotification * sp); @@ -126,7 +126,7 @@ notify_notification_class_init (NotifyNotificationClass * klass) G_TYPE_NONE, 0); - dbus_g_object_register_marshaller (_notify_marshal_VOID__UINT_STRING, + dbus_g_object_register_marshaller (notify_marshal_VOID__UINT_STRING, G_TYPE_NONE, G_TYPE_UINT, G_TYPE_STRING,