2 # Copyright 2001,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
24 # Install this stuff so that it ends up as the gnuradio.atsc module
25 # This usually ends up at:
26 # ${prefix}/lib/python${python_version}/site-packages/gnuradio
28 ourpythondir = $(grpythondir)
29 ourlibdir = $(grpyexecdir)
31 INCLUDES = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS) $(CPPUNIT_INCLUDES)
33 #LIBS += $(GNURADIO_CORE_LIBS)
37 qa_atsci_trellis_encoder_t1_input.dat \
38 qa_atsci_trellis_encoder_t1_output.dat \
39 qa_atsci_viterbi_decoder_t1_input.dat \
40 qa_atsci_viterbi_decoder_t1_output.dat
44 atsci_viterbi_mux.cc \
52 # We build two libtool convenience libraries
54 noinst_LTLIBRARIES = libatsc.la libatsc-qa.la
58 # atsci_root_raised_cosine.cc \
59 # atsci_root_raised_cosine_bandpass.cc \
63 libatsc_la_SOURCES = \
64 atsc_derandomizer.cc \
69 atsc_deinterleaver.cc \
70 atsc_trellis_encoder.cc \
71 atsc_viterbi_decoder.cc \
72 atsc_ds_to_softds.cc \
73 atsc_field_sync_mux.cc \
74 atsc_field_sync_demux.cc \
77 atsc_bit_timing_loop.cc \
80 atsci_basic_trellis_encoder.cc \
81 atsci_data_interleaver.cc \
83 atsci_equalizer_lms.cc \
84 atsci_equalizer_lms2.cc \
85 atsci_equalizer_nop.cc \
86 atsci_fake_single_viterbi.cc \
88 atsci_fs_checker_naive.cc \
89 atsci_fs_correlator.cc \
90 atsci_fs_correlator_naive.cc \
91 atsci_single_viterbi.cc \
95 atsci_reed_solomon.cc \
96 atsci_sliding_correlator.cc \
97 atsci_trellis_encoder.cc \
98 atsci_viterbi_decoder.cc \
99 create_atsci_equalizer.cc \
100 create_atsci_fs_checker.cc \
101 create_atsci_fs_correlator.cc \
104 libatsc_qa_la_SOURCES = \
105 qa_atsci_basic_trellis_encoder.cc \
106 qa_atsci_data_interleaver.cc \
107 qa_atsci_equalizer_nop.cc \
108 qa_atsci_fake_single_viterbi.cc \
109 qa_atsci_fs_correlator.cc \
110 qa_atsci_single_viterbi.cc \
111 qa_atsci_randomizer.cc \
112 qa_atsci_reed_solomon.cc \
113 qa_atsci_sliding_correlator.cc \
114 qa_atsci_trellis_encoder.cc \
115 qa_atsci_viterbi_decoder.cc \
116 qa_convolutional_interleaver.cc \
118 qa_interleaver_fifo.cc
121 # These headers get installed in ${prefix}/include/gnuradio
122 grinclude_HEADERS = \
124 atsc_derandomizer.h \
129 atsc_deinterleaver.h \
130 atsc_trellis_encoder.h \
131 atsc_viterbi_decoder.h \
132 atsc_ds_to_softds.h \
133 atsc_field_sync_mux.h \
134 atsc_field_sync_demux.h \
137 atsc_bit_timing_loop.h \
141 atsci_basic_trellis_encoder.h \
142 atsci_data_interleaver.h \
143 atsci_diag_output.h \
145 atsci_equalizer_lms.h \
146 atsci_equalizer_lms2.h \
147 atsci_equalizer_nop.h \
149 atsci_fake_single_viterbi.h \
151 atsci_fs_checker_naive.h \
152 atsci_fs_correlator.h \
153 atsci_fs_correlator_naive.h \
156 atsci_reed_solomon.h \
157 atsci_root_raised_cosine.h \
158 atsci_root_raised_cosine_bandpass.h \
159 atsci_single_viterbi.h \
161 atsci_sliding_correlator.h \
165 atsci_trellis_encoder.h \
166 atsci_viterbi_decoder.h \
168 convolutional_interleaver.h \
169 create_atsci_equalizer.h \
170 create_atsci_fs_checker.h \
171 create_atsci_fs_correlator.h \
172 fpll_btloop_coupling.h \
175 qa_atsci_basic_trellis_encoder.h \
176 qa_atsci_data_interleaver.h \
177 qa_atsci_equalizer_nop.h \
178 qa_atsci_fake_single_viterbi.h \
179 qa_atsci_fs_correlator.h \
180 qa_atsci_randomizer.h \
181 qa_atsci_reed_solomon.h \
182 qa_atsci_single_viterbi.h \
183 qa_atsci_sliding_correlator.h \
184 qa_atsci_trellis_encoder.h \
185 qa_atsci_viterbi_decoder.h \
186 qa_convolutional_interleaver.h \
187 qa_interleaver_fifo.h
190 # programs we build but don't install
191 # FIXME add test_atsc
197 atsci_viterbi_gen_SOURCES = atsci_viterbi_gen.cc
199 atsci_viterbi_mux.cc: atsci_viterbi_gen$(EXEEXT)
200 $(MAKE) $(AM_MAKEFLAGS) CXX="$(CXX_FOR_BUILD)" atsci_viterbi_gen$(EXEEXT)
201 ./atsci_viterbi_gen$(EXEEXT) -o atsci_viterbi_mux.cc
204 test_atsci_SOURCES = test_atsci.cc
205 test_atsci_LDADD = libatsc-qa.la libatsc.la $(GNURADIO_CORE_LIBS) $(CPPUNIT_LIBS)
208 # ------------------------------------------------------------------------
209 # This is the swig-ish part of the Makefile.
210 # It builds the atsc module which we'll load into python
211 # ------------------------------------------------------------------------
213 SWIGCPPPYTHONARGS = -fvirtual -python -modern $(PYTHON_CPPFLAGS) \
214 $(STD_DEFINES_AND_INCLUDES)
224 $(top_srcdir)/gr-atsc/src/lib/atsc.i
226 # These files are built by SWIG. The first is the C++ glue.
227 # The second is the python wrapper that loads the _atsc shared library
228 # and knows how to call our extensions.
230 swig_built_sources = \
234 # This gets atsc.py installed in the right place
238 ourlib_LTLIBRARIES = _atsc.la
240 # These are the source files that go into the shared library
245 _atsc_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version
247 # link the library against some comon swig runtime code and the
248 # c++ standard library
250 $(GNURADIO_CORE_LIBS) \
255 atsc.cc atsc.py: atsc.i $(ALL_IFILES)
256 $(SWIG) $(SWIGCPPPYTHONARGS) -module atsc -o atsc.cc $(LOCAL_IFILES)
258 # These swig headers get installed in ${prefix}/include/gnuradio/swig
259 swiginclude_HEADERS = \
262 # Don't distribute output of swig
264 @for file in $(BUILT_SOURCES); do echo $(RM) $(distdir)/$$file; done
265 @for file in $(BUILT_SOURCES); do $(RM) $(distdir)/$$file; done
267 # ------------------------------------------------------------------------
269 # ------------------------------------------------------------------------
271 CLEANFILES = atsci_viterbi_mux.cc
272 MOSTLYCLEANFILES = $(BUILT_SOURCES) *.pyc