Merge commit 'v3.3.0' into upstream
[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 libgnuradio_atsc_la_LDFLAGS = $(NO_UNDEFINED) $(LTVERSIONFLAGS)
96
97 noinst_LTLIBRARIES = libgnuradio-atsc-qa.la
98
99 libgnuradio_atsc_qa_la_SOURCES =                \
100         qa_atsci_basic_trellis_encoder.cc       \
101         qa_atsci_data_interleaver.cc            \
102         qa_atsci_equalizer_nop.cc               \
103         qa_atsci_fake_single_viterbi.cc         \
104         qa_atsci_fs_correlator.cc               \
105         qa_atsci_single_viterbi.cc              \
106         qa_atsci_randomizer.cc                  \
107         qa_atsci_reed_solomon.cc                \
108         qa_atsci_sliding_correlator.cc          \
109         qa_atsci_trellis_encoder.cc             \
110         qa_atsci_viterbi_decoder.cc             \
111         qa_convolutional_interleaver.cc         \
112         qa_atsci.cc                             \
113         qa_interleaver_fifo.cc                  
114
115 libgnuradio_atsc_qa_la_LIBADD =                 \
116         $(GNURADIO_CORE_LA)
117
118 libgnuradio_atsc_qa_la_LDFLAGS = \
119         $(NO_UNDEFINED)
120
121
122 # These headers get installed in ${prefix}/include/gnuradio
123 grinclude_HEADERS =                             \
124         atsc_consts.h                           \
125         atsc_derandomizer.h                     \
126         atsc_randomizer.h                       \
127         atsc_rs_decoder.h                       \
128         atsc_rs_encoder.h                       \
129         atsc_interleaver.h                      \
130         atsc_deinterleaver.h                    \
131         atsc_trellis_encoder.h                  \
132         atsc_viterbi_decoder.h                  \
133         atsc_ds_to_softds.h                     \
134         atsc_field_sync_mux.h                   \
135         atsc_field_sync_demux.h                 \
136         atsc_equalizer.h                        \
137         atsc_fs_checker.h                       \
138         atsc_bit_timing_loop.h                  \
139         atsc_fpll.h                             \
140         atsc_depad.h                            \
141         atsc_pad.h                              \
142         atsc_types.h                            \
143         atsci_basic_trellis_encoder.h           \
144         atsci_data_interleaver.h                \
145         atsci_diag_output.h                     \
146         atsci_equalizer.h                       \
147         atsci_equalizer_lms.h                   \
148         atsci_equalizer_lms2.h                  \
149         atsci_equalizer_nop.h                   \
150         atsci_exp2_lp.h                         \
151         atsci_fake_single_viterbi.h             \
152         atsci_fs_checker.h                      \
153         atsci_fs_checker_naive.h                \
154         atsci_fs_correlator.h                   \
155         atsci_fs_correlator_naive.h             \
156         atsci_pnXXX.h                           \
157         atsci_randomizer.h                      \
158         atsci_reed_solomon.h                    \
159         atsci_root_raised_cosine.h              \
160         atsci_root_raised_cosine_bandpass.h     \
161         atsci_single_viterbi.h                  \
162         atsci_slicer_agc.h                      \
163         atsci_sliding_correlator.h              \
164         atsci_sssr.h                            \
165         atsci_syminfo.h                         \
166         atsci_sync_tag.h                        \
167         atsci_trellis_encoder.h                 \
168         atsci_viterbi_decoder.h                 \
169         atsci_vsbtx_lp.h                        \
170         convolutional_interleaver.h             \
171         create_atsci_equalizer.h                \
172         create_atsci_fs_checker.h               \
173         create_atsci_fs_correlator.h            \
174         fpll_btloop_coupling.h                  \
175         interleaver_fifo.h                      \
176         qa_atsci.h                              \
177         qa_atsci_basic_trellis_encoder.h        \
178         qa_atsci_data_interleaver.h             \
179         qa_atsci_equalizer_nop.h                \
180         qa_atsci_fake_single_viterbi.h          \
181         qa_atsci_fs_correlator.h                \
182         qa_atsci_randomizer.h                   \
183         qa_atsci_reed_solomon.h                 \
184         qa_atsci_single_viterbi.h               \
185         qa_atsci_sliding_correlator.h           \
186         qa_atsci_trellis_encoder.h              \
187         qa_atsci_viterbi_decoder.h              \
188         qa_convolutional_interleaver.h          \
189         qa_interleaver_fifo.h
190
191
192 # programs we build but don't install
193 # FIXME add test_atsc
194 noinst_PROGRAMS =                               \
195         test_atsci
196
197 atsci_viterbi_gen$(EXEEXT): $(srcdir)/atsci_viterbi_gen.cc
198         $(CXX_FOR_BUILD) -O2 $(srcdir)/atsci_viterbi_gen.cc -o atsci_viterbi_gen$(EXEEXT)
199
200 atsci_viterbi_mux.cc: atsci_viterbi_gen$(EXEEXT) 
201         ./atsci_viterbi_gen$(EXEEXT) -o atsci_viterbi_mux.cc
202
203 test_atsci_SOURCES = test_atsci.cc
204 test_atsci_LDADD   =            \
205         libgnuradio-atsc-qa.la  \
206         libgnuradio-atsc.la     \
207         $(CPPUNIT_LIBS)
208
209 # ------------------------------------------------------------------------
210 #  Cleanup
211 # ------------------------------------------------------------------------
212
213 CLEANFILES = atsci_viterbi_mux.cc atsci_viterbi_gen$(EXEEXT)
214
215 if PYTHON
216 # ------------------------------------------------------------------------
217 #  This is the swig-ish part of the Makefile.
218 #  It builds the atsc module which we'll load into python
219 # ------------------------------------------------------------------------
220
221 TOP_SWIG_IFILES =               \
222         atsc.i
223
224 # Install so that they end up available as:
225 #   import gnuradio
226 # This ends up at:
227 #   ${prefix}/lib/python${python_version}/site-packages/gnuradio
228 atsc_pythondir_category =       \
229         gnuradio
230
231 # additional libraries for linking with the SWIG-generated library
232 atsc_la_swig_libadd =           \
233         libgnuradio-atsc.la
234
235 include $(top_srcdir)/Makefile.swig
236
237 # add some of the variables generated inside the Makefile.swig.gen
238 BUILT_SOURCES += $(swig_built_sources)
239
240 # Do not distribute the output of SWIG
241 no_dist_files = $(swig_built_sources)
242 endif