Merged r11123:11148 from jcorgan/np into trunk.
[debian/gnuradio] / gr-atsc / src / lib / Makefile.am
1 #
2 # Copyright 2001,2004,2005,2006,2008,2009 Free Software Foundation, Inc.
3
4 # This file is part of GNU Radio
5
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 3, or (at your option)
9 # any later version.
10
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.
15
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.
20
21
22 include $(top_srcdir)/Makefile.common
23
24 AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS) \
25         $(CPPUNIT_INCLUDES) $(WITH_INCLUDES)
26
27 EXTRA_DIST =                                    \
28         atsci_viterbi_gen.cc                    \
29         gen_encoder.py                          \
30         qa_atsci_trellis_encoder_t1_input.dat   \
31         qa_atsci_trellis_encoder_t1_output.dat  \
32         qa_atsci_viterbi_decoder_t1_input.dat   \
33         qa_atsci_viterbi_decoder_t1_output.dat
34
35
36 TESTS = test_atsci
37
38 lib_LTLIBRARIES = libgnuradio-atsc.la
39
40 # FIXME
41 #       atsci_exp2_lp.cc                        \
42 #       atsci_root_raised_cosine.cc             \
43 #       atsci_root_raised_cosine_bandpass.cc    \
44 #       atsci_vsbtx_lp.cc                       \
45 #
46
47 libgnuradio_atsc_la_SOURCES =                   \
48         atsc_derandomizer.cc                    \
49         atsc_randomizer.cc                      \
50         atsc_rs_decoder.cc                      \
51         atsc_rs_encoder.cc                      \
52         atsc_interleaver.cc                     \
53         atsc_deinterleaver.cc                   \
54         atsc_trellis_encoder.cc                 \
55         atsc_viterbi_decoder.cc                 \
56         atsc_ds_to_softds.cc                    \
57         atsc_field_sync_mux.cc                  \
58         atsc_field_sync_demux.cc                \
59         atsc_equalizer.cc                       \
60         atsc_fs_checker.cc                      \
61         atsc_bit_timing_loop.cc                 \
62         atsc_fpll.cc                            \
63         atsc_depad.cc                           \
64         atsc_pad.cc                             \
65         atsci_basic_trellis_encoder.cc          \
66         atsci_data_interleaver.cc               \
67         atsci_equalizer.cc                      \
68         atsci_equalizer_lms.cc                  \
69         atsci_equalizer_lms2.cc                 \
70         atsci_equalizer_nop.cc                  \
71         atsci_fake_single_viterbi.cc            \
72         atsci_fs_checker.cc                     \
73         atsci_fs_checker_naive.cc               \
74         atsci_fs_correlator.cc                  \
75         atsci_fs_correlator_naive.cc            \
76         atsci_single_viterbi.cc                 \
77         atsci_sssr.cc                           \
78         atsci_pnXXX.cc                          \
79         atsci_randomizer.cc                     \
80         atsci_reed_solomon.cc                   \
81         atsci_sliding_correlator.cc             \
82         atsci_trellis_encoder.cc                \
83         atsci_viterbi_decoder.cc                \
84         create_atsci_equalizer.cc               \
85         create_atsci_fs_checker.cc              \
86         create_atsci_fs_correlator.cc           \
87         plinfo.cc                               
88
89 BUILT_SOURCES =                                 \
90         atsci_viterbi_mux.cc
91
92 libgnuradio_atsc_la_LIBADD =                    \
93         $(GNURADIO_CORE_LA)
94
95 noinst_LTLIBRARIES = libgnuradio-atsc-qa.la
96
97 libgnuradio_atsc_qa_la_SOURCES =                \
98         qa_atsci_basic_trellis_encoder.cc       \
99         qa_atsci_data_interleaver.cc            \
100         qa_atsci_equalizer_nop.cc               \
101         qa_atsci_fake_single_viterbi.cc         \
102         qa_atsci_fs_correlator.cc               \
103         qa_atsci_single_viterbi.cc              \
104         qa_atsci_randomizer.cc                  \
105         qa_atsci_reed_solomon.cc                \
106         qa_atsci_sliding_correlator.cc          \
107         qa_atsci_trellis_encoder.cc             \
108         qa_atsci_viterbi_decoder.cc             \
109         qa_convolutional_interleaver.cc         \
110         qa_atsci.cc                             \
111         qa_interleaver_fifo.cc                  
112
113 libgnuradio_atsc_qa_la_LIBADD =                 \
114         $(GNURADIO_CORE_LA)
115
116
117 # These headers get installed in ${prefix}/include/gnuradio
118 grinclude_HEADERS =                             \
119         atsc_consts.h                           \
120         atsc_derandomizer.h                     \
121         atsc_randomizer.h                       \
122         atsc_rs_decoder.h                       \
123         atsc_rs_encoder.h                       \
124         atsc_interleaver.h                      \
125         atsc_deinterleaver.h                    \
126         atsc_trellis_encoder.h                  \
127         atsc_viterbi_decoder.h                  \
128         atsc_ds_to_softds.h                     \
129         atsc_field_sync_mux.h                   \
130         atsc_field_sync_demux.h                 \
131         atsc_equalizer.h                        \
132         atsc_fs_checker.h                       \
133         atsc_bit_timing_loop.h                  \
134         atsc_fpll.h                             \
135         atsc_depad.h                            \
136         atsc_pad.h                              \
137         atsc_types.h                            \
138         atsci_basic_trellis_encoder.h           \
139         atsci_data_interleaver.h                \
140         atsci_diag_output.h                     \
141         atsci_equalizer.h                       \
142         atsci_equalizer_lms.h                   \
143         atsci_equalizer_lms2.h                  \
144         atsci_equalizer_nop.h                   \
145         atsci_exp2_lp.h                         \
146         atsci_fake_single_viterbi.h             \
147         atsci_fs_checker.h                      \
148         atsci_fs_checker_naive.h                \
149         atsci_fs_correlator.h                   \
150         atsci_fs_correlator_naive.h             \
151         atsci_pnXXX.h                           \
152         atsci_randomizer.h                      \
153         atsci_reed_solomon.h                    \
154         atsci_root_raised_cosine.h              \
155         atsci_root_raised_cosine_bandpass.h     \
156         atsci_single_viterbi.h                  \
157         atsci_slicer_agc.h                      \
158         atsci_sliding_correlator.h              \
159         atsci_sssr.h                            \
160         atsci_syminfo.h                         \
161         atsci_sync_tag.h                        \
162         atsci_trellis_encoder.h                 \
163         atsci_viterbi_decoder.h                 \
164         atsci_vsbtx_lp.h                        \
165         convolutional_interleaver.h             \
166         create_atsci_equalizer.h                \
167         create_atsci_fs_checker.h               \
168         create_atsci_fs_correlator.h            \
169         fpll_btloop_coupling.h                  \
170         interleaver_fifo.h                      \
171         qa_atsci.h                              \
172         qa_atsci_basic_trellis_encoder.h        \
173         qa_atsci_data_interleaver.h             \
174         qa_atsci_equalizer_nop.h                \
175         qa_atsci_fake_single_viterbi.h          \
176         qa_atsci_fs_correlator.h                \
177         qa_atsci_randomizer.h                   \
178         qa_atsci_reed_solomon.h                 \
179         qa_atsci_single_viterbi.h               \
180         qa_atsci_sliding_correlator.h           \
181         qa_atsci_trellis_encoder.h              \
182         qa_atsci_viterbi_decoder.h              \
183         qa_convolutional_interleaver.h          \
184         qa_interleaver_fifo.h
185
186
187 # programs we build but don't install
188 # FIXME add test_atsc
189 noinst_PROGRAMS =                               \
190         test_atsci
191
192 atsci_viterbi_gen$(EXEEXT): $(srcdir)/atsci_viterbi_gen.cc
193         $(CXX_FOR_BUILD) -O2 $(srcdir)/atsci_viterbi_gen.cc -o atsci_viterbi_gen$(EXEEXT)
194
195 atsci_viterbi_mux.cc: atsci_viterbi_gen$(EXEEXT) 
196         ./atsci_viterbi_gen$(EXEEXT) -o atsci_viterbi_mux.cc
197
198 test_atsci_SOURCES = test_atsci.cc
199 test_atsci_LDADD   =            \
200         libgnuradio-atsc-qa.la  \
201         libgnuradio-atsc.la     \
202         $(CPPUNIT_LIBS)
203
204 # ------------------------------------------------------------------------
205 #  Cleanup
206 # ------------------------------------------------------------------------
207
208 CLEANFILES = atsci_viterbi_mux.cc atsci_viterbi_gen$(EXEEXT)
209
210 if PYTHON
211 # ------------------------------------------------------------------------
212 #  This is the swig-ish part of the Makefile.
213 #  It builds the atsc module which we'll load into python
214 # ------------------------------------------------------------------------
215
216 TOP_SWIG_IFILES =               \
217         atsc.i
218
219 # Install so that they end up available as:
220 #   import gnuradio
221 # This ends up at:
222 #   ${prefix}/lib/python${python_version}/site-packages/gnuradio
223 atsc_pythondir_category =       \
224         gnuradio
225
226 # additional libraries for linking with the SWIG-generated library
227 atsc_la_swig_libadd =           \
228         libgnuradio-atsc.la
229
230 include $(top_srcdir)/Makefile.swig
231
232 # add some of the variables generated inside the Makefile.swig.gen
233 BUILT_SOURCES += $(swig_built_sources)
234
235 # Do not distribute the output of SWIG
236 no_dist_files = $(swig_built_sources)
237 endif