Statistics
| Branch: | Tag: | Revision:

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