2 # Copyright 2004,2005,2006 Free Software Foundation, Inc.
4 # This file is part of GNU Radio
6 # GNU Radio is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2, or (at your option)
11 # GNU Radio is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with GNU Radio; see the file COPYING. If not, write to
18 # the Free Software Foundation, Inc., 51 Franklin Street,
19 # Boston, MA 02110-1301, USA.
22 include $(top_srcdir)/Makefile.common
26 # Install this stuff so that it ends up as the gnuradio.trellis module
27 # This usually ends up at:
28 # ${prefix}/lib/python${python_version}/site-packages/gnuradio
30 ourpythondir = $(grpythondir)
31 ourlibdir = $(grpyexecdir)
33 INCLUDES = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS)
35 SWIGPYTHONARGS = $(SWIGPYTHONFLAGS) $(STD_DEFINES_AND_INCLUDES)
46 $(top_srcdir)/gr-trellis/src/lib/trellis.i
49 # These files are built by SWIG. The first is the C++ glue.
50 # The second is the python wrapper that loads the _trellis shared library
51 # and knows how to call our extensions.
57 # This gets trellis.py installed in the right place
61 ourlib_LTLIBRARIES = _trellis.la
63 # These are the source files that go into the shared library
64 _trellis_la_SOURCES = \
70 trellis_calc_metric.cc \
71 trellis_permutation.cc \
73 trellis_siso_combined_f.cc \
77 _trellis_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version
79 # link the library against some comon swig runtime code and the
80 # c++ standard library
81 _trellis_la_LIBADD = \
86 trellis.cc trellis.py: $(ALL_IFILES) $(grinclude_HEADERS)
87 $(SWIG) $(SWIGPYTHONARGS) -module trellis -o trellis.cc $(LOCAL_IFILES)
89 # These headers get installed in ${prefix}/include/gnuradio
95 trellis_metric_type.h \
96 trellis_calc_metric.h \
97 trellis_permutation.h \
100 trellis_siso_combined_f.h \
104 # These swig headers get installed in ${prefix}/include/gnuradio/swig
105 swiginclude_HEADERS = \
110 trellis_permutation.i \
112 trellis_siso_combined_f.i \
117 MOSTLYCLEANFILES = $(BUILT_SOURCES) *.pyc
119 # Don't distribute output of swig
121 @for file in $(BUILT_SOURCES); do echo $(RM) $(distdir)/$$file; done
122 @for file in $(BUILT_SOURCES); do $(RM) $(distdir)/$$file; done