1 tools_dir = $(top_srcdir)/tools
15 noinst_LTLIBRARIES = libemp-extensions.la
17 libemp_extensions_la_LIBADD = \
18 $(TELEPATHY_GLIB_LIBS)
20 # The client-specific parts are built into a separate .o file, so the linker
21 # can discard them when linking services. The service-specific parts are
22 # in svc-*.c, so we don't need an extensions-svc.c.
23 libemp_extensions_la_SOURCES = \
28 nodist_libemp_extensions_la_SOURCES = \
29 _gen/signals-marshal.c \
30 _gen/signals-marshal.h \
31 _gen/signals-marshal.list \
32 _gen/register-dbus-glib-marshallers-body.h \
37 _gen/interfaces-body.h \
39 _gen/cli-misc-body.h \
46 $(nodist_libemp_extensions_la_SOURCES) \
49 CLEANFILES = $(BUILT_SOURCES)
51 XSLTPROCFLAGS = --nonet --novalid
53 # Generated files which can be generated for all categories simultaneously
55 _gen/%.xml: %.xml $(wildcard *.xml)
57 $(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \
60 extensions.html: _gen/all.xml $(tools_dir)/doc-generator.xsl
61 $(XSLTPROC) $(XSLTPROCFLAGS) \
62 $(tools_dir)/doc-generator.xsl \
65 _gen/gtypes.h _gen/gtypes-body.h: _gen/all.xml \
66 $(top_srcdir)/tools/glib-gtypes-generator.py
67 $(PYTHON) $(top_srcdir)/tools/glib-gtypes-generator.py \
70 _gen/signals-marshal.list: _gen/all.xml \
71 $(tools_dir)/glib-signals-marshal-gen.py
72 $(PYTHON) $(tools_dir)/glib-signals-marshal-gen.py $< > $@
74 _gen/signals-marshal.h: _gen/signals-marshal.list
75 $(GLIB_GENMARSHAL) --header --prefix=_emp_ext_marshal $< > $@
77 _gen/signals-marshal.c: _gen/signals-marshal.list
79 echo '#include "signals-marshal.h"' && \
80 $(GLIB_GENMARSHAL) --body --prefix=_emp_ext_marshal $< \
83 _gen/register-dbus-glib-marshallers-body.h: _gen/all.xml \
84 $(tools_dir)/glib-client-marshaller-gen.py
85 $(PYTHON) $(tools_dir)/glib-client-marshaller-gen.py $< \
88 _gen/enums.h: _gen/all.xml $(tools_dir)/c-constants-generator.xsl
89 $(XSLTPROC) $(XSLTPROCFLAGS) \
90 --stringparam mixed-case-prefix Emp \
91 $(tools_dir)/c-constants-generator.xsl \
94 _gen/interfaces.h: _gen/all.xml \
95 $(tools_dir)/glib-interfaces-generator.xsl \
96 $(tools_dir)/c-interfaces-generator.xsl
97 $(XSLTPROC) $(XSLTPROCFLAGS) \
98 --stringparam mixed-case-prefix Emp \
99 $(tools_dir)/glib-interfaces-generator.xsl \
102 _gen/interfaces-body.h: _gen/all.xml \
103 $(tools_dir)/glib-interfaces-body-generator.xsl \
104 $(tools_dir)/c-interfaces-generator.xsl
105 $(XSLTPROC) $(XSLTPROCFLAGS) \
106 --stringparam mixed-case-prefix Emp \
107 $(tools_dir)/glib-interfaces-body-generator.xsl \
110 # Generated files which must be generated per "category". Each TpProxy
111 # subclass you want to use with --subclass will need to have its own category,
112 # although you can subdivide further if you want.
114 _gen/cli-misc-body.h _gen/cli-misc.h: _gen/misc.xml \
115 $(tools_dir)/glib-client-gen.py
116 $(PYTHON) $(tools_dir)/glib-client-gen.py \
118 --iface-quark-prefix=EMP_IFACE_QUARK \
119 $< Emp_Cli _gen/cli-misc
121 _gen/svc-misc.c _gen/svc-misc.h: _gen/misc.xml \
122 $(tools_dir)/glib-ginterface-gen.py
123 $(PYTHON) $(tools_dir)/glib-ginterface-gen.py \
124 --filename=_gen/svc-misc \
125 --signal-marshal-prefix=_emp_ext \
126 --include='<telepathy-glib/dbus.h>' \
127 --include='"_gen/signals-marshal.h"' \
128 --not-implemented-func='tp_dbus_g_method_return_not_implemented' \