| 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 = \ |
| 6 | ccpriomap \ |
| 7 | clockclass \ |
| 8 | component \ |
| 9 | componentclass \ |
| 10 | connection \ |
| 11 | ctfwriter \ |
| 12 | event \ |
| 13 | eventclass \ |
| 14 | fields \ |
| 15 | ft \ |
| 16 | graph \ |
| 17 | logging \ |
| 18 | notification \ |
| 19 | notifiter \ |
| 20 | packet \ |
| 21 | plugin \ |
| 22 | port \ |
| 23 | ref \ |
| 24 | stream \ |
| 25 | streamclass \ |
| 26 | trace \ |
| 27 | values \ |
| 28 | version |
| 29 | |
| 30 | # Python modules (without `.py` extension) |
| 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 |
| 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 |
| 78 | _native_bt_la_SOURCES = logging.h logging.c |
| 79 | nodist__native_bt_la_SOURCES = native_bt_wrap.c |
| 80 | _native_bt_la_LDFLAGS = -module |
| 81 | _native_bt_la_CFLAGS = $(PYTHON_INCLUDE) -I$(srcdir) $(AM_CFLAGS) |
| 82 | _native_bt_la_LIBADD = \ |
| 83 | $(top_builddir)/lib/libbabeltrace.la \ |
| 84 | $(top_builddir)/logging/libbabeltrace-logging.la \ |
| 85 | $(top_builddir)/common/libbabeltrace-common.la |
| 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 \ |
| 91 | cp -f "$(srcdir)/$$file" "$(builddir)"; \ |
| 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 \ |
| 99 | rm -f "$(srcdir)/$$file" "$(builddir)"; \ |
| 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) |