root / gr-atsc / src / lib / Makefile.am @ 776da31e
History | View | Annotate | Download (7.4 kB)
| 1 | # |
|---|---|
| 2 | # Copyright 2001,2004,2005,2006,2008 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 | # 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
|
| 27 | |
| 28 | ourpythondir = $(grpythondir) |
| 29 | ourlibdir = $(grpyexecdir) |
| 30 | |
| 31 | AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS) \ |
| 32 | $(CPPUNIT_INCLUDES) $(WITH_INCLUDES) |
| 33 | |
| 34 | EXTRA_DIST = \ |
| 35 | atsci_viterbi_gen.cc \ |
| 36 | gen_encoder.py \ |
| 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 |
| 41 | |
| 42 | |
| 43 | BUILT_SOURCES = \ |
| 44 | atsci_viterbi_mux.cc \ |
| 45 | $(swig_built_sources) |
| 46 | |
| 47 | |
| 48 | TESTS = \ |
| 49 | test_atsci |
| 50 | |
| 51 | |
| 52 | # We build two libtool convenience libraries |
| 53 | |
| 54 | noinst_LTLIBRARIES = libatsc.la libatsc-qa.la |
| 55 | |
| 56 | # FIXME |
| 57 | # atsci_exp2_lp.cc \ |
| 58 | # atsci_root_raised_cosine.cc \ |
| 59 | # atsci_root_raised_cosine_bandpass.cc \ |
| 60 | # atsci_vsbtx_lp.cc \ |
| 61 | # |
| 62 | |
| 63 | libatsc_la_SOURCES = \ |
| 64 | atsc_derandomizer.cc \ |
| 65 | atsc_randomizer.cc \ |
| 66 | atsc_rs_decoder.cc \ |
| 67 | atsc_rs_encoder.cc \ |
| 68 | atsc_interleaver.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 \ |
| 75 | atsc_equalizer.cc \ |
| 76 | atsc_fs_checker.cc \ |
| 77 | atsc_bit_timing_loop.cc \ |
| 78 | atsc_fpll.cc \ |
| 79 | atsc_depad.cc \ |
| 80 | atsc_pad.cc \ |
| 81 | atsci_basic_trellis_encoder.cc \ |
| 82 | atsci_data_interleaver.cc \ |
| 83 | atsci_equalizer.cc \ |
| 84 | atsci_equalizer_lms.cc \ |
| 85 | atsci_equalizer_lms2.cc \ |
| 86 | atsci_equalizer_nop.cc \ |
| 87 | atsci_fake_single_viterbi.cc \ |
| 88 | atsci_fs_checker.cc \ |
| 89 | atsci_fs_checker_naive.cc \ |
| 90 | atsci_fs_correlator.cc \ |
| 91 | atsci_fs_correlator_naive.cc \ |
| 92 | atsci_single_viterbi.cc \ |
| 93 | atsci_sssr.cc \ |
| 94 | atsci_pnXXX.cc \ |
| 95 | atsci_randomizer.cc \ |
| 96 | atsci_reed_solomon.cc \ |
| 97 | atsci_sliding_correlator.cc \ |
| 98 | atsci_trellis_encoder.cc \ |
| 99 | atsci_viterbi_decoder.cc \ |
| 100 | create_atsci_equalizer.cc \ |
| 101 | create_atsci_fs_checker.cc \ |
| 102 | create_atsci_fs_correlator.cc \ |
| 103 | plinfo.cc |
| 104 | |
| 105 | libatsc_qa_la_SOURCES = \ |
| 106 | qa_atsci_basic_trellis_encoder.cc \ |
| 107 | qa_atsci_data_interleaver.cc \ |
| 108 | qa_atsci_equalizer_nop.cc \ |
| 109 | qa_atsci_fake_single_viterbi.cc \ |
| 110 | qa_atsci_fs_correlator.cc \ |
| 111 | qa_atsci_single_viterbi.cc \ |
| 112 | qa_atsci_randomizer.cc \ |
| 113 | qa_atsci_reed_solomon.cc \ |
| 114 | qa_atsci_sliding_correlator.cc \ |
| 115 | qa_atsci_trellis_encoder.cc \ |
| 116 | qa_atsci_viterbi_decoder.cc \ |
| 117 | qa_convolutional_interleaver.cc \ |
| 118 | qa_atsci.cc \ |
| 119 | qa_interleaver_fifo.cc |
| 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 | |
| 198 | atsci_viterbi_gen$(EXEEXT): $(srcdir)/atsci_viterbi_gen.cc |
| 199 | $(CXX_FOR_BUILD) -O2 $(srcdir)/atsci_viterbi_gen.cc -o atsci_viterbi_gen$(EXEEXT) |
| 200 | |
| 201 | atsci_viterbi_mux.cc: atsci_viterbi_gen$(EXEEXT) |
| 202 | ./atsci_viterbi_gen$(EXEEXT) -o atsci_viterbi_mux.cc |
| 203 | |
| 204 | |
| 205 | test_atsci_SOURCES = test_atsci.cc |
| 206 | test_atsci_LDADD = \ |
| 207 | libatsc-qa.la \ |
| 208 | libatsc.la \ |
| 209 | $(GNURADIO_CORE_LA) \ |
| 210 | $(CPPUNIT_LIBS) |
| 211 | |
| 212 | # ------------------------------------------------------------------------ |
| 213 | # This is the swig-ish part of the Makefile. |
| 214 | # It builds the atsc module which we'll load into python |
| 215 | # ------------------------------------------------------------------------ |
| 216 | |
| 217 | SWIGCPPPYTHONARGS = -fvirtual -python -modern $(PYTHON_CPPFLAGS) \ |
| 218 | $(STD_DEFINES_AND_INCLUDES) $(WITH_SWIG_INCLUDES) $(WITH_INCLUDES) |
| 219 | |
| 220 | ALL_IFILES = \ |
| 221 | $(LOCAL_IFILES) \ |
| 222 | $(NON_LOCAL_IFILES) |
| 223 | |
| 224 | NON_LOCAL_IFILES = \ |
| 225 | $(GNURADIO_I) |
| 226 | |
| 227 | LOCAL_IFILES = \ |
| 228 | $(top_srcdir)/gr-atsc/src/lib/atsc.i |
| 229 | |
| 230 | # These files are built by SWIG. The first is the C++ glue. |
| 231 | # The second is the python wrapper that loads the _atsc shared library |
| 232 | # and knows how to call our extensions. |
| 233 | |
| 234 | swig_built_sources = \ |
| 235 | atsc.cc \ |
| 236 | atsc.py |
| 237 | |
| 238 | # This gets atsc.py installed in the right place |
| 239 | ourpython_PYTHON = \ |
| 240 | atsc.py |
| 241 | |
| 242 | ourlib_LTLIBRARIES = _atsc.la |
| 243 | |
| 244 | # These are the source files that go into the shared library |
| 245 | _atsc_la_SOURCES = \ |
| 246 | atsc.cc |
| 247 | |
| 248 | # magic flags |
| 249 | _atsc_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version |
| 250 | |
| 251 | # link the library against some comon swig runtime code and the |
| 252 | # c++ standard library |
| 253 | _atsc_la_LIBADD = \ |
| 254 | $(GNURADIO_CORE_LA) \ |
| 255 | $(PYTHON_LDFLAGS) \ |
| 256 | libatsc.la \ |
| 257 | -lstdc++ |
| 258 | |
| 259 | atsc.cc atsc.py: atsc.i $(ALL_IFILES) |
| 260 | $(SWIG) $(SWIGCPPPYTHONARGS) -module atsc -o atsc.cc $(LOCAL_IFILES) |
| 261 | |
| 262 | # These swig headers get installed in ${prefix}/include/gnuradio/swig
|
| 263 | swiginclude_HEADERS = \ |
| 264 | $(LOCAL_IFILES) |
| 265 | |
| 266 | # Don't distribute output of swig |
| 267 | dist-hook: |
| 268 | @for file in $(BUILT_SOURCES); do echo $(RM) $(distdir)/$$file; done |
| 269 | @for file in $(BUILT_SOURCES); do $(RM) $(distdir)/$$file; done |
| 270 | |
| 271 | # ------------------------------------------------------------------------ |
| 272 | # Cleanup |
| 273 | # ------------------------------------------------------------------------ |
| 274 | |
| 275 | CLEANFILES = atsci_viterbi_mux.cc atsci_viterbi_gen |
| 276 | MOSTLYCLEANFILES = $(BUILT_SOURCES) *.pyc |
| 277 |