Commit | Line | Data |
---|---|---|
4c3a0a3c | 1 | if USE_PYTHON |
bb938d02 FD |
2 | SUBDIRS = babeltrace . |
3 | ||
4 | INSTALLED_FILES=$(builddir)/installed_files.txt | |
5 | ||
6 | AM_CFLAGS = $(PACKAGE_CFLAGS) -I$(top_srcdir)/include -I$(srcdir)/babeltrace/ | |
7 | ||
8 | # Since the shared object used by the python bindings is not built with libtool | |
9 | # we need to manually set the `rpath` during linkage | |
10 | AM_LDFLAGS=-L$(top_builddir)/formats/ctf/.libs -L$(top_builddir)/lib/.libs | |
11 | all-local: build-python-bindings.stamp | |
12 | ||
13 | $(builddir)/babeltrace/__init__.py: $(srcdir)/babeltrace/__init__.py.in | |
14 | cd babeltrace && $(MAKE) __init__.py | |
15 | ||
16 | $(builddir)/babeltrace/babeltrace.i: $(srcdir)/babeltrace/babeltrace.i.in | |
17 | cd babeltrace && $(MAKE) babeltrace.i | |
18 | ||
19 | BINDINGS_DEPS=setup.py \ | |
20 | babeltrace/__init__.py \ | |
21 | babeltrace/babeltrace.i \ | |
22 | babeltrace/python-complements.c \ | |
23 | babeltrace/python-complements.h | |
24 | ||
25 | BUILD_FLAGS=CC="$(CC)" \ | |
98d8d2bc MJ |
26 | CFLAGS="$(GLIB_CFLAGS) $(AM_CFLAGS) $(CFLAGS)" \ |
27 | CPPFLAGS="$(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)" \ | |
a0439ffe | 28 | LDFLAGS="$(AM_LDFLAGS) $(LDFLAGS) $(GLIB_LIBS) $(LIBS)" |
bb938d02 FD |
29 | |
30 | build-python-bindings.stamp: $(BINDINGS_DEPS) | |
31 | $(BUILD_FLAGS) $(PYTHON) $(builddir)/setup.py build_ext | |
32 | $(BUILD_FLAGS) $(PYTHON) $(builddir)/setup.py build | |
33 | touch $@ | |
34 | ||
35 | install-exec-local: build-python-bindings.stamp | |
36 | @opts="--prefix=$(prefix) --record $(INSTALLED_FILES) --verbose --no-compile $(DISTSETUPOPTS)"; \ | |
37 | if [ "$(DESTDIR)" != "" ]; then \ | |
38 | opts="$$opts --root=$(DESTDIR)"; \ | |
39 | fi; \ | |
40 | $(PYTHON) $(builddir)/setup.py install $$opts; | |
41 | ||
42 | clean-local: | |
43 | rm -rf $(builddir)/build | |
44 | ||
45 | # Distutils' setup.py does not include an uninstall target, we thus need to do | |
46 | # it manually. We save the path of the files that were installed during the install target | |
47 | # and delete them during the uninstallation. | |
48 | uninstall-local: | |
49 | if [ "$(DESTDIR)" != "" ]; then \ | |
50 | $(SED) -i "s|^|$(DESTDIR)/|g" $(INSTALLED_FILES); \ | |
51 | fi | |
52 | cat $(INSTALLED_FILES) | xargs rm -rf || true | |
53 | $(GREP) "__init__.py" $(INSTALLED_FILES) | xargs dirname | xargs rm -rf || true | |
54 | rm -f $(INSTALLED_FILES) | |
55 | ||
56 | CLEANFILES = babeltrace/babeltrace_wrap.c babeltrace/babeltrace.py build-python-bindings.stamp | |
57 | DISTCLEANFILES = setup.py | |
4c3a0a3c | 58 | endif |