Commit | Line | Data |
---|---|---|
81447b5b PP |
1 | # native module name (without `.i` extension) |
2 | NATIVE_MODULE = native_bt | |
3 | ||
4 | # interface dependencies (without `native_bt` prefix and `.i` extension) | |
5 | NATIVE_MODULE_DEPS = \ | |
811644b8 | 6 | ccpriomap \ |
81447b5b | 7 | clockclass \ |
811644b8 PP |
8 | component \ |
9 | componentclass \ | |
10 | connection \ | |
11 | ctfwriter \ | |
81447b5b | 12 | event \ |
811644b8 | 13 | eventclass \ |
81447b5b PP |
14 | fields \ |
15 | ft \ | |
811644b8 PP |
16 | graph \ |
17 | logging \ | |
18 | notification \ | |
19 | notifiter \ | |
81447b5b | 20 | packet \ |
811644b8 PP |
21 | plugin \ |
22 | port \ | |
81447b5b | 23 | ref \ |
81447b5b | 24 | stream \ |
811644b8 | 25 | streamclass \ |
81447b5b PP |
26 | trace \ |
27 | values \ | |
811644b8 | 28 | version |
81447b5b PP |
29 | |
30 | # Python modules (without `.py` extension) | |
811644b8 PP |
31 | EXTRA_MODULES = \ |
32 | clock_class \ | |
33 | clock_class_priority_map \ | |
34 | component \ | |
35 | connection \ | |
36 | ctf_writer \ | |
37 | event \ | |
38 | event_class \ | |
39 | field_types \ | |
40 | fields \ | |
41 | graph \ | |
42 | logging \ | |
43 | notification \ | |
44 | notification_iterator \ | |
45 | object \ | |
46 | packet \ | |
47 | plugin \ | |
48 | port \ | |
49 | py_plugin \ | |
50 | stream \ | |
51 | stream_class \ | |
52 | trace \ | |
53 | utils \ | |
54 | values | |
81447b5b PP |
55 | |
56 | # automatically generated file lists | |
57 | EXTRA_MODULES_PY = $(addprefix $(srcdir)/,$(addsuffix .py,$(EXTRA_MODULES))) | |
58 | NATIVE_MODULE_I = $(srcdir)/$(NATIVE_MODULE).i | |
59 | NATIVE_MODULE_PY = $(NATIVE_MODULE).py | |
60 | NATIVE_MODULE_C = $(NATIVE_MODULE)_wrap.c | |
61 | NATIVE_MODULE_DEPS_I = $(addprefix $(srcdir)/native_bt,$(addsuffix .i,$(NATIVE_MODULE_DEPS))) | |
62 | ||
63 | # installed Python package | |
64 | nodist_bt2package_PYTHON = __init__.py $(EXTRA_MODULES_PY) $(NATIVE_MODULE_PY) | |
65 | ||
66 | # native libraries to build | |
67 | nativelibs_LTLIBRARIES = _native_bt.la | |
68 | ||
69 | # installation directory for the `bt2` package | |
70 | bt2packagedir = $(pythondir)/bt2 | |
71 | nativelibsdir = $(bt2packagedir) | |
72 | ||
73 | # SWIG to C wrapper (and Python file) | |
74 | $(NATIVE_MODULE_C): $(NATIVE_MODULE_I) $(NATIVE_MODULE_DEPS_I) | |
75 | $(SWIG) -python -Wall -I$(srcdir) -I$(top_srcdir)/include -module $(NATIVE_MODULE) -outcurrentdir $(NATIVE_MODULE_I) | |
76 | ||
77 | # native_bt module | |
811644b8 PP |
78 | _native_bt_la_SOURCES = logging.h logging.c |
79 | nodist__native_bt_la_SOURCES = native_bt_wrap.c | |
81447b5b | 80 | _native_bt_la_LDFLAGS = -module |
811644b8 | 81 | _native_bt_la_CFLAGS = $(PYTHON_INCLUDE) -I$(srcdir) $(AM_CFLAGS) |
81447b5b PP |
82 | _native_bt_la_LIBADD = \ |
83 | $(top_builddir)/lib/libbabeltrace.la \ | |
811644b8 PP |
84 | $(top_builddir)/logging/libbabeltrace-logging.la \ |
85 | $(top_builddir)/common/libbabeltrace-common.la | |
81447b5b PP |
86 | |
87 | # extra module sources -> build directory | |
88 | all-local: | |
89 | @if [ x"$(srcdir)" != x"$(builddir)" ]; then \ | |
90 | for file in $(EXTRA_MODULES_PY); do \ | |
811644b8 | 91 | cp -f "$(srcdir)/$$file" "$(builddir)"; \ |
81447b5b PP |
92 | done; \ |
93 | fi | |
94 | ||
95 | # clean extra module sources in build directory | |
96 | clean-local: | |
97 | @if [ x"$(srcdir)" != x"$(builddir)" ]; then \ | |
98 | for file in $(EXTRA_MODULES_PY); do \ | |
811644b8 | 99 | rm -f "$(srcdir)/$$file" "$(builddir)"; \ |
81447b5b PP |
100 | done; \ |
101 | fi | |
102 | ||
103 | # distribute: extra Python modules and SWIG interface files | |
104 | EXTRA_DIST = __init__.py.in $(EXTRA_MODULES_PY) $(NATIVE_MODULE_I) $(NATIVE_MODULE_DEPS_I) | |
105 | ||
106 | # clean: generated C and Python files (by SWIG) | |
107 | CLEANFILES = $(NATIVE_MODULE_PY) $(NATIVE_MODULE_C) |