1 tools_dir = $(top_srcdir)/tools
17 noinst_LTLIBRARIES = libemp-extensions.la
19 libemp_extensions_la_LIBADD = \
22 # The client-specific parts are built into a separate .o file, so the linker
23 # can discard them when linking services. The service-specific parts are
24 # in svc-*.c, so we don't need an extensions-svc.c.
25 libemp_extensions_la_SOURCES = \
30 nodist_libemp_extensions_la_SOURCES = \
31 _gen/signals-marshal.c \
32 _gen/signals-marshal.h \
33 _gen/signals-marshal.list \
34 _gen/register-dbus-glib-marshallers-body.h \
39 _gen/interfaces-body.h \
41 _gen/cli-misc-body.h \
48 $(nodist_libemp_extensions_la_SOURCES) \
51 CLEANFILES = $(BUILT_SOURCES)
53 XSLTPROCFLAGS = --nonet --novalid
55 # Generated files which can be generated for all categories simultaneously
57 _gen/all.xml: all.xml $(wildcard *.xml)
59 $(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \
60 --param "allow-undefined-interfaces" "true()" \
63 extensions.html: _gen/all.xml $(tools_dir)/doc-generator.xsl
64 $(XSLTPROC) $(XSLTPROCFLAGS) \
65 $(tools_dir)/doc-generator.xsl \
68 _gen/gtypes.h _gen/gtypes-body.h: _gen/all.xml \
69 $(top_srcdir)/tools/glib-gtypes-generator.py
70 $(PYTHON) $(top_srcdir)/tools/glib-gtypes-generator.py \
73 _gen/signals-marshal.list: _gen/all.xml \
74 $(tools_dir)/glib-signals-marshal-gen.py
75 $(PYTHON) $(tools_dir)/glib-signals-marshal-gen.py $< > $@
77 _gen/signals-marshal.h: _gen/signals-marshal.list Makefile.am
78 $(GLIB_GENMARSHAL) --header --prefix=_emp_ext_marshal $< > $@
80 _gen/signals-marshal.c: _gen/signals-marshal.list Makefile.am
81 { echo '#include "_gen/signals-marshal.h"' && \
82 $(GLIB_GENMARSHAL) --body --prefix=_emp_ext_marshal $< ; } > $@
84 _gen/register-dbus-glib-marshallers-body.h: _gen/all.xml \
85 $(tools_dir)/glib-client-marshaller-gen.py
86 $(PYTHON) $(tools_dir)/glib-client-marshaller-gen.py $< \
89 _gen/enums.h: _gen/all.xml $(tools_dir)/c-constants-generator.xsl
90 $(XSLTPROC) $(XSLTPROCFLAGS) \
91 --stringparam mixed-case-prefix Emp \
92 $(tools_dir)/c-constants-generator.xsl \
95 _gen/interfaces.h: _gen/all.xml \
96 $(tools_dir)/glib-interfaces-generator.xsl \
97 $(tools_dir)/c-interfaces-generator.xsl
98 $(XSLTPROC) $(XSLTPROCFLAGS) \
99 --stringparam mixed-case-prefix Emp \
100 $(tools_dir)/glib-interfaces-generator.xsl \
103 _gen/interfaces-body.h: _gen/all.xml \
104 $(tools_dir)/glib-interfaces-body-generator.xsl \
105 $(tools_dir)/c-interfaces-generator.xsl
106 $(XSLTPROC) $(XSLTPROCFLAGS) \
107 --stringparam mixed-case-prefix Emp \
108 $(tools_dir)/glib-interfaces-body-generator.xsl \
111 # Generated files which must be generated per "category". Each TpProxy
112 # subclass you want to use with --subclass will need to have its own category,
113 # although you can subdivide further if you want.
115 _gen/misc.xml: misc.xml $(wildcard *.xml)
117 $(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \
120 _gen/cli-misc-body.h _gen/cli-misc.h: _gen/misc.xml \
121 $(tools_dir)/glib-client-gen.py
122 $(PYTHON) $(tools_dir)/glib-client-gen.py \
125 --subclass-assert=TP_IS_PROXY \
126 --iface-quark-prefix=EMP_IFACE_QUARK \
127 --tp-proxy-api=0.7.6 \
128 $< Emp_Cli _gen/cli-misc
130 _gen/svc-misc.c _gen/svc-misc.h: _gen/misc.xml \
131 $(tools_dir)/glib-ginterface-gen.py
132 $(PYTHON) $(tools_dir)/glib-ginterface-gen.py \
133 --filename=_gen/svc-misc \
134 --signal-marshal-prefix=_emp_ext \
135 --include='<telepathy-glib/dbus.h>' \
136 --include='"_gen/signals-marshal.h"' \
137 --not-implemented-func='tp_dbus_g_method_return_not_implemented' \