1 # === Miscellaneous ===
4 EXTRA_DIST = API_CHANGES.txt dbus-python.pc.in HACKING.txt \
5 AUTHORS COPYING NEWS ChangeLog TODO \
7 examples/example-async-client.py \
8 examples/example-client.py \
9 examples/example-service.py \
10 examples/example-signal-emitter.py \
11 examples/example-signal-recipient.py \
12 examples/list-system-services.py \
13 test/cross-test-client.py \
14 test/cross-test-server.py \
17 test/run-with-tmp-session-bus.sh \
19 test/test-service.py \
20 test/test-signals.py \
21 test/test-standalone.py \
22 test/test-unusable-main-loop.py \
23 test/TestSuitePythonService.service.in \
24 test/tmp-session-bus.conf.in
25 # miss out the gconf examples for now - they don't work
27 pkgconfigdir = $(libdir)/pkgconfig
28 pkgconfig_DATA = dbus-python.pc
30 include_HEADERS = include/dbus-python.h
34 nobase_python_PYTHON = dbus_bindings.py \
35 dbus/dbus_bindings.py \
39 dbus/_expat_introspect_parser.py \
43 dbus/mainloop/__init__.py \
44 dbus/mainloop/glib.py \
49 # === Python C extensions ===
51 pyexec_LTLIBRARIES = _dbus_bindings.la _dbus_glib_bindings.la \
53 _dbus_bindings_la_CPPFLAGS = -I$(srcdir)/include \
56 _dbus_bindings_la_LDFLAGS = -module -avoid-version \
57 -export-symbols-regex init_dbus_bindings \
59 _dbus_bindings_la_SOURCES = \
60 _dbus_bindings/abstract.c \
61 _dbus_bindings/bus.c \
62 _dbus_bindings/bytes.c \
63 _dbus_bindings/conn.c \
64 _dbus_bindings/conn-internal.h \
65 _dbus_bindings/conn-methods.c \
66 _dbus_bindings/containers.c \
67 _dbus_bindings/dbus_bindings-internal.h \
68 _dbus_bindings/debug.c \
69 _dbus_bindings/exceptions.c \
70 _dbus_bindings/float.c \
71 _dbus_bindings/generic.c \
72 _dbus_bindings/int.c \
73 _dbus_bindings/mainloop.c \
74 _dbus_bindings/message-append.c \
75 _dbus_bindings/message.c \
76 _dbus_bindings/message-get-args.c \
77 _dbus_bindings/message-internal.h \
78 _dbus_bindings/module.c \
79 _dbus_bindings/pending-call.c \
80 _dbus_bindings/signature.c \
81 _dbus_bindings/string.c \
82 _dbus_bindings/types-internal.h \
83 _dbus_bindings/validation.c \
86 _dbus_glib_bindings_la_CPPFLAGS = -I$(top_srcdir)/include \
90 _dbus_glib_bindings_la_LDFLAGS = -module -avoid-version \
91 -export-symbols-regex init_dbus_glib_bindings \
92 $(DBUS_LIBS) $(DBUS_GLIB_LIBS)
93 _dbus_glib_bindings_la_SOURCES = _dbus_glib_bindings/module.c \
96 dbus_py_test_la_CPPFLAGS = -I$(top_srcdir)/include $(DBUS_CFLAGS) \
98 dbus_py_test_la_LDFLAGS = -module -avoid-version \
100 dbus_py_test_la_SOURCES = test/dbus_py_test.c \
101 include/dbus-python.h
106 TESTS_ENVIRONMENT = DBUS_TOP_SRCDIR="$(PWD)/$(top_srcdir)" \
107 DBUS_TOP_BUILDDIR="$(PWD)" \
108 DBUS_PYTHON_VERSION='$(PACKAGE_VERSION)' \
109 PYTHONPATH="$(PWD)/.libs:$(PWD)/$(top_srcdir):$(PWD)/$(top_srcdir)/test" \
111 TESTS = test/run-test.sh
113 cross-test-compile: all
115 $(TESTS_ENVIRONMENT) $(PYTHON) $(top_srcdir)/test/cross-test-server.py
117 $(TESTS_ENVIRONMENT) $(PYTHON) $(top_srcdir)/test/cross-test-client.py
119 # === Documentation ===
121 ChangeLog: always-rebuild
122 @if test -d $(top_srcdir)/.git; then \
123 if git-log --stat > ChangeLog; then \
126 git-log > Changelog || exit 1; \
130 TXT_RSTDOCS = doc/tutorial.txt API_CHANGES.txt HACKING.txt
131 RSTDOCS = README NEWS TODO
132 dist_doc_DATA = $(TXT_RSTDOCS) $(RSTDOCS)
135 HTML_TXT_RSTDOCS = doc/tutorial.html API_CHANGES.html HACKING.html
136 HTML_RSTDOCS = README.html NEWS.html TODO.html
137 nodist_doc_DATA = $(HTML_TXT_RSTDOCS) $(HTML_RSTDOCS)
139 CLEANFILES += $(nodist_doc_DATA)
141 RST2HTMLFLAGS = --generator --date --time --exit-status=2 \
142 --cloak-email-addresses --no-raw --no-file-insertion
144 $(HTML_TXT_RSTDOCS) : %.html: %.txt
145 $(RST2HTML) $(RST2HTMLFLAGS) $< $@
146 $(HTML_RSTDOCS) : %.html: %
147 $(RST2HTML) $(RST2HTMLFLAGS) $< $@
156 api api/index.html: $(nobase_python_PYTHON) _dbus_bindings.la _dbus_glib_bindings.la
159 $(TESTS_ENVIRONMENT) $(EPYDOC) -o api --html \
160 --docformat restructuredtext -v \
161 `echo $(nobase_python_PYTHON) \
162 | sed -e 's#/__init__\.py##g' \
163 -e 's/\.py\>//g' -e 's#/#.#'g` \
164 || { rm -rf api; exit 1; }
167 .PHONY: cross-test-compile cross-test-server cross-test-client always-rebuild