1 include $(top_srcdir)/tools/shave.mk
3 tools_dir = $(top_srcdir)/tools
5 AM_CPPFLAGS = $(DISABLE_DEPRECATED)
18 Connection_Interface_Location.xml \
22 noinst_LTLIBRARIES = libemp-extensions.la
24 libemp_extensions_la_LIBADD = \
27 # The client-specific parts are built into a separate .o file, so the linker
28 # can discard them when linking services. The service-specific parts are
29 # in svc-*.c, so we don't need an extensions-svc.c.
30 libemp_extensions_la_SOURCES = \
35 nodist_libemp_extensions_la_SOURCES = \
36 _gen/signals-marshal.c \
37 _gen/signals-marshal.h \
38 _gen/signals-marshal.list \
39 _gen/register-dbus-glib-marshallers-body.h \
44 _gen/interfaces-body.h \
46 _gen/cli-misc-body.h \
53 $(nodist_libemp_extensions_la_SOURCES) \
56 CLEANFILES = $(BUILT_SOURCES)
58 XSLTPROCFLAGS = --nonet --novalid
60 # Generated files which can be generated for all categories simultaneously
62 _gen/all.xml: all.xml $(wildcard *.xml)
64 $(QUIET_GEN)$(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \
67 extensions.html: _gen/all.xml $(tools_dir)/doc-generator.xsl
68 $(QUIET_GEN)$(XSLTPROC) $(XSLTPROCFLAGS) \
69 --param "allow-undefined-interfaces" "true()" \
70 $(tools_dir)/doc-generator.xsl \
73 _gen/gtypes.h _gen/gtypes-body.h: _gen/all.xml \
74 $(top_srcdir)/tools/glib-gtypes-generator.py
75 $(QUIET_GEN)$(PYTHON) $(top_srcdir)/tools/glib-gtypes-generator.py \
78 _gen/signals-marshal.list: _gen/all.xml \
79 $(tools_dir)/glib-signals-marshal-gen.py
80 $(QUIET_GEN)$(PYTHON) $(tools_dir)/glib-signals-marshal-gen.py $< > $@
82 _gen/signals-marshal.h: _gen/signals-marshal.list Makefile.am
83 $(QUIET_GEN)$(GLIB_GENMARSHAL) --header --prefix=_emp_ext_marshal $< > $@
85 _gen/signals-marshal.c: _gen/signals-marshal.list Makefile.am
86 $(QUIET_GEN){ echo '#include "_gen/signals-marshal.h"' && \
87 $(GLIB_GENMARSHAL) --body --prefix=_emp_ext_marshal $< ; } > $@
89 _gen/register-dbus-glib-marshallers-body.h: _gen/all.xml \
90 $(tools_dir)/glib-client-marshaller-gen.py
91 $(QUIET_GEN)$(PYTHON) $(tools_dir)/glib-client-marshaller-gen.py $< \
94 _gen/enums.h: _gen/all.xml \
95 $(tools_dir)/c-constants-gen.py
96 $(QUIET_GEN)$(PYTHON) $(tools_dir)/c-constants-gen.py \
100 _gen/interfaces-body.h _gen/interfaces.h: _gen/all.xml \
101 $(tools_dir)/glib-interfaces-gen.py
102 $(QUIET_GEN)$(PYTHON) $(tools_dir)/glib-interfaces-gen.py \
103 Emp _gen/interfaces-body.h _gen/interfaces.h $<
105 # Generated files which must be generated per "category". Each TpProxy
106 # subclass you want to use with --subclass will need to have its own category,
107 # although you can subdivide further if you want.
109 _gen/misc.xml: misc.xml $(wildcard *.xml)
111 $(QUIET_GEN)$(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \
114 _gen/cli-misc-body.h _gen/cli-misc.h: _gen/misc.xml \
115 $(tools_dir)/glib-client-gen.py
116 $(QUIET_GEN)$(PYTHON) $(tools_dir)/glib-client-gen.py \
119 --subclass-assert=TP_IS_PROXY \
120 --iface-quark-prefix=EMP_IFACE_QUARK \
121 --tp-proxy-api=0.7.6 \
122 $< Emp_Cli _gen/cli-misc
124 _gen/svc-misc.c _gen/svc-misc.h: _gen/misc.xml \
125 $(tools_dir)/glib-ginterface-gen.py
126 $(QUIET_GEN)$(PYTHON) $(tools_dir)/glib-ginterface-gen.py \
127 --filename=_gen/svc-misc \
128 --signal-marshal-prefix=_emp_ext \
129 --include='<telepathy-glib/dbus.h>' \
130 --include='"_gen/signals-marshal.h"' \
131 --not-implemented-func='tp_dbus_g_method_return_not_implemented' \