summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@openedhand.com>2007-09-21 11:08:06 +0100
committerEmmanuele Bassi <ebassi@openedhand.com>2007-09-21 11:19:59 +0100
commitcd1040e2fb6f6da50aaf72017746b33234c39704 (patch)
tree0344f98a5a0c273c604808e0ab6f6fd0c34c6b81
parent821ac3e602f936318f9a2c3b831f135408ca5d74 (diff)
downloadjson-glib-cd1040e2fb6f6da50aaf72017746b33234c39704.tar.gz
Add marshallers generation to the build
Use glib-genmarshal to generate the marshallers we need. For the time being, we just need a (void,pointer).
-rw-r--r--json-glib/Makefile.am30
-rw-r--r--json-glib/json-marshal.list1
2 files changed, 26 insertions, 5 deletions
diff --git a/json-glib/Makefile.am b/json-glib/Makefile.am
index 977c8fa..9af73f5 100644
--- a/json-glib/Makefile.am
+++ b/json-glib/Makefile.am
@@ -12,14 +12,34 @@ INCLUDES = \
LDADD = $(JSON_LT_LDFLAGS) -export-dynamic -rpath $(libdir)
-BUILT_SOURCES =
+BUILT_SOURCES = json-marshal.h json-marshal.c
-STAMP_FILES =
+STAMP_FILES = stamp-json-marshal.h
+
+json-marshal.h: stamp-json-marshal.h
+ @true
+stamp-json-marshal.h: Makefile json-marshal.list
+ $(GLIB_GENMARSHAL) \
+ --prefix=_json_marshal \
+ --header \
+ $(srcdir)/json-marshal.list > xgen-jmh && \
+ (cmp -s xgen-jmh json-marshal.h || cp -f xgen-jmh json-marshal.h) && \
+ rm -f xgen-jmh && \
+ echo timestamp > $(@F)
+
+json-marshal.c: Makefile json-marshal.list
+ (echo "#include \"json-marshal.h\"" ; \
+ $(GLIB_GENMARSHAL) \
+ --prefix=_json_marshal \
+ --body \
+ $(srcdir)/json-marshal.list ) > xgen-jmc && \
+ cp -f xgen-jmc json-marshal.c && \
+ rm -f xgen-jmc
source_h = \
- json-parser.h \
- json-types.h \
- json-version.h \
+ $(srcdir)/json-parser.h \
+ $(srcdir)/json-types.h \
+ $(srcdir)/json-version.h \
$(NULL)
source_h_private = json-private.h
diff --git a/json-glib/json-marshal.list b/json-glib/json-marshal.list
new file mode 100644
index 0000000..88b4a56
--- /dev/null
+++ b/json-glib/json-marshal.list
@@ -0,0 +1 @@
+VOID:POINTER