blob: 5649d1596bce922485d508ece94fca88ae8af30c [file] [log] [blame]
dburgessb3a0ca42011-10-12 07:44:40 +00001#
2# Copyright 2008 Free Software Foundation, Inc.
3# Copyright 2010 Range Networks, Inc.
4#
5# This software is distributed under the terms of the GNU Public License.
6# See the COPYING file in the main directory for details.
7#
8# This program is free software: you can redistribute it and/or modify
9# it under the terms of the GNU General Public License as published by
10# the Free Software Foundation, either version 3 of the License, or
11# (at your option) any later version.
12#
13# This program is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with this program. If not, see <http://www.gnu.org/licenses/>.
20#
21
22include $(top_srcdir)/Makefile.common
23
Pau Espin Pedrol2128a302018-04-24 16:16:06 +020024SUBDIRS = arch device
Thomas Tsou3eaae802013-08-20 19:31:14 -040025
Erica0e1ed32022-11-28 19:21:08 +010026AM_CPPFLAGS = -Wall $(STD_DEFINES_AND_INCLUDES) -I${srcdir}/arch/common -I${srcdir}/device/common -I$(top_srcdir)/osmocom-bb/src/host/trxcon/include/
27AM_CXXFLAGS = -lpthread $(LIBOSMOCORE_CFLAGS) $(LIBOSMOCTRL_CFLAGS) $(LIBOSMOVTY_CFLAGS) -I$(top_srcdir)/osmocom-bb/src/host/trxcon/include/
28AM_CFLAGS = -lpthread $(LIBOSMOCORE_CFLAGS) $(LIBOSMOCTRL_CFLAGS) $(LIBOSMOVTY_CFLAGS) -I$(top_srcdir)/osmocom-bb/src/host/trxcon/include/
Thomas Tsou17bbb9b2013-10-30 21:24:40 -040029
Pau Espin Pedrol2128a302018-04-24 16:16:06 +020030noinst_LTLIBRARIES = libtransceiver_common.la
dburgessb3a0ca42011-10-12 07:44:40 +000031
kurtis.heimerl8aea56e2011-11-26 03:18:30 +000032COMMON_SOURCES = \
dburgessb3a0ca42011-10-12 07:44:40 +000033 radioInterface.cpp \
kurtis.heimerl8aea56e2011-11-26 03:18:30 +000034 radioVector.cpp \
35 radioClock.cpp \
Tom Tsou28670fb2015-08-21 19:32:58 -070036 radioBuffer.cpp \
dburgessb3a0ca42011-10-12 07:44:40 +000037 sigProcLib.cpp \
Thomas Tsou20eb6d62013-11-09 14:30:41 -050038 signalVector.cpp \
Tom Tsou35222292016-06-22 16:16:30 -070039 Transceiver.cpp \
40 ChannelizerBase.cpp \
41 Channelizer.cpp \
Pau Espin Pedrol15fa64b2019-07-01 20:41:55 +020042 Synthesis.cpp \
Erica0e1ed32022-11-28 19:21:08 +010043 proto_trxd.c \
44 grgsm_vitac/grgsm_vitac.cpp \
45 grgsm_vitac/viterbi_detector.cc
dburgessb3a0ca42011-10-12 07:44:40 +000046
Pau Espin Pedrol2128a302018-04-24 16:16:06 +020047libtransceiver_common_la_SOURCES = \
kurtis.heimerl75336d92011-11-26 03:19:05 +000048 $(COMMON_SOURCES) \
Thomas Tsou03e6ecf2013-08-20 20:54:54 -040049 Resampler.cpp \
Thomas Tsoue90a42b2013-11-13 23:38:09 -050050 radioInterfaceResamp.cpp \
Tom Tsoud6ae8642017-03-30 17:22:58 -070051 radioInterfaceMulti.cpp
kurtis.heimerl8aea56e2011-11-26 03:18:30 +000052
dburgessb3a0ca42011-10-12 07:44:40 +000053noinst_HEADERS = \
54 Complex.h \
55 radioInterface.h \
kurtis.heimerl8aea56e2011-11-26 03:18:30 +000056 radioVector.h \
57 radioClock.h \
Tom Tsou28670fb2015-08-21 19:32:58 -070058 radioBuffer.h \
dburgessb3a0ca42011-10-12 07:44:40 +000059 sigProcLib.h \
Thomas Tsou20eb6d62013-11-09 14:30:41 -050060 signalVector.h \
dburgessb3a0ca42011-10-12 07:44:40 +000061 Transceiver.h \
Thomas Tsou03e6ecf2013-08-20 20:54:54 -040062 Resampler.h \
Tom Tsou35222292016-06-22 16:16:30 -070063 ChannelizerBase.h \
64 Channelizer.h \
Pau Espin Pedrol778b30a2019-06-28 13:27:24 +020065 Synthesis.h \
Erica0e1ed32022-11-28 19:21:08 +010066 proto_trxd.h \
67 grgsm_vitac/viterbi_detector.h \
68 grgsm_vitac/constants.h
dburgessb3a0ca42011-10-12 07:44:40 +000069
Pau Espin Pedrol2128a302018-04-24 16:16:06 +020070COMMON_LDADD = \
71 libtransceiver_common.la \
Thomas Tsou17bbb9b2013-10-30 21:24:40 -040072 $(ARCH_LA) \
dburgessb3a0ca42011-10-12 07:44:40 +000073 $(GSM_LA) \
Alexander Huemer6fafd332018-01-12 15:04:02 +010074 $(COMMON_LA) \
Pau Espin Pedrol8b843e52018-02-20 14:44:39 +010075 $(FFTWF_LIBS) \
Pau Espin Pedrol5ea18172018-02-20 16:48:15 +010076 $(LIBOSMOCORE_LIBS) \
Erica0e1ed32022-11-28 19:21:08 +010077 $(LIBOSMOCODING_LIBS) \
Pau Espin Pedrol5ea18172018-02-20 16:48:15 +010078 $(LIBOSMOCTRL_LIBS) \
79 $(LIBOSMOVTY_LIBS)
dburgessb3a0ca42011-10-12 07:44:40 +000080
Erica0e1ed32022-11-28 19:21:08 +010081TRXCON_LDADD = \
82 $(top_builddir)/osmocom-bb/src/host/trxcon/src/.libs/libl1sched.a \
83 $(top_builddir)/osmocom-bb/src/host/trxcon/src/.libs/libtrxcon.a
84
85MS_SOURCES = \
86 ms/sch.c \
87 ms/ms.cpp \
88 ms/ms_rx_lower.cpp
89
90noinst_HEADERS += \
91 ms/ms.h \
92 ms/bladerf_specific.h \
93 ms/uhd_specific.h \
94 ms/ms_upper.h \
95 ms/itrq.h
96
Pau Espin Pedrolf3d7f442018-04-24 18:49:03 +020097bin_PROGRAMS =
Pau Espin Pedrol2128a302018-04-24 16:16:06 +020098
Pau Espin Pedrolf3d7f442018-04-24 18:49:03 +020099if DEVICE_UHD
100bin_PROGRAMS += osmo-trx-uhd
101osmo_trx_uhd_SOURCES = osmo-trx.cpp
102osmo_trx_uhd_LDADD = \
Pau Espin Pedrol2a8183b2018-04-28 00:20:19 +0200103 $(builddir)/device/uhd/libdevice.la \
Pau Espin Pedrol2128a302018-04-24 16:16:06 +0200104 $(COMMON_LDADD) \
Pau Espin Pedrol2a8183b2018-04-28 00:20:19 +0200105 $(UHD_LIBS)
Pau Espin Pedrolf3d7f442018-04-24 18:49:03 +0200106osmo_trx_uhd_CPPFLAGS = $(AM_CPPFLAGS) $(UHD_CFLAGS)
Erica0e1ed32022-11-28 19:21:08 +0100107
108if ENABLE_MS_TRX
109bin_PROGRAMS += osmo-trx-ms-uhd
110osmo_trx_ms_uhd_SOURCES = $(MS_SOURCES) ms/ms_upper.cpp ms/l1ctl_server.c ms/logging.cpp ms/l1ctl_server_cb.cpp
111osmo_trx_ms_uhd_LDADD = \
112 $(builddir)/device/uhd/libdevice.la \
113 $(COMMON_LDADD) \
114 $(UHD_LIBS) \
115 $(TRXCON_LDADD)
116osmo_trx_ms_uhd_CPPFLAGS = $(AM_CPPFLAGS) $(UHD_CFLAGS) -DBUILDUHD
117
118bin_PROGRAMS += osmo-trx-syncthing-uhd
119osmo_trx_syncthing_uhd_SOURCES = $(MS_SOURCES) ms/ms_rx_burst_test.cpp
120osmo_trx_syncthing_uhd_LDADD = \
121 $(builddir)/device/uhd/libdevice.la \
122 $(COMMON_LDADD) \
123 $(UHD_LIBS) \
124 $(TRXCON_LDADD)
125osmo_trx_syncthing_uhd_CPPFLAGS = $(AM_CPPFLAGS) $(UHD_CFLAGS) -DSYNCTHINGONLY -DBUILDUHD
126endif
Pau Espin Pedrolf3d7f442018-04-24 18:49:03 +0200127endif
128
129if DEVICE_USRP1
130bin_PROGRAMS += osmo-trx-usrp1
131osmo_trx_usrp1_SOURCES = osmo-trx.cpp
132osmo_trx_usrp1_LDADD = \
Pau Espin Pedrol2a8183b2018-04-28 00:20:19 +0200133 $(builddir)/device/usrp1/libdevice.la \
Pau Espin Pedrolf3d7f442018-04-24 18:49:03 +0200134 $(COMMON_LDADD) \
Pau Espin Pedrol2a8183b2018-04-28 00:20:19 +0200135 $(USRP_LIBS)
Pau Espin Pedrolf3d7f442018-04-24 18:49:03 +0200136osmo_trx_usrp1_CPPFLAGS = $(AM_CPPFLAGS) $(USRP_CFLAGS)
kurtis.heimerl4ba47182011-11-26 03:19:36 +0000137endif
Pau Espin Pedrol1f50fed2018-04-25 11:12:06 +0200138
139if DEVICE_LMS
140bin_PROGRAMS += osmo-trx-lms
141osmo_trx_lms_SOURCES = osmo-trx.cpp
142osmo_trx_lms_LDADD = \
Pau Espin Pedrolf7905ac2018-05-08 20:29:32 +0200143 $(builddir)/device/lms/libdevice.la \
Pau Espin Pedrol1f50fed2018-04-25 11:12:06 +0200144 $(COMMON_LDADD) \
Pau Espin Pedrolf7905ac2018-05-08 20:29:32 +0200145 $(LMS_LIBS)
Pau Espin Pedrol1f50fed2018-04-25 11:12:06 +0200146osmo_trx_lms_CPPFLAGS = $(AM_CPPFLAGS) $(LMS_CFLAGS)
147endif
Eric Wild1e17c4f2020-03-24 17:19:27 +0100148
Eric00841832022-11-28 19:20:32 +0100149if DEVICE_BLADE
150bin_PROGRAMS += osmo-trx-blade
151osmo_trx_blade_SOURCES = osmo-trx.cpp
152osmo_trx_blade_LDADD = \
153 $(builddir)/device/bladerf/libdevice.la \
154 $(COMMON_LDADD) \
155 $(BLADE_LIBS)
156osmo_trx_blade_CPPFLAGS = $(AM_CPPFLAGS) $(LMS_CFLAGS)
157
Erica0e1ed32022-11-28 19:21:08 +0100158if ENABLE_MS_TRX
159bin_PROGRAMS += osmo-trx-ms-blade
160osmo_trx_ms_blade_SOURCES = $(MS_SOURCES) ms/ms_upper.cpp ms/l1ctl_server.c ms/logging.cpp ms/l1ctl_server_cb.cpp
161osmo_trx_ms_blade_LDADD = \
162 $(builddir)/device/bladerf/libdevice.la \
163 $(COMMON_LDADD) \
164 $(BLADE_LIBS) \
165 $(TRXCON_LDADD)
166osmo_trx_ms_blade_CPPFLAGS = $(AM_CPPFLAGS) $(BLADE_CFLAGS) -DBUILDBLADE
167
168bin_PROGRAMS += osmo-trx-syncthing-blade
169osmo_trx_syncthing_blade_SOURCES = $(MS_SOURCES) ms/ms_rx_burst_test.cpp
170osmo_trx_syncthing_blade_LDADD = \
171 $(builddir)/device/bladerf/libdevice.la \
172 $(COMMON_LDADD) \
173 $(BLADE_LIBS) \
174 $(TRXCON_LDADD)
175osmo_trx_syncthing_blade_CPPFLAGS = $(AM_CPPFLAGS) $(BLADE_CFLAGS) -DSYNCTHINGONLY -DBUILDBLADE -I../device/ipc
176endif
Eric00841832022-11-28 19:20:32 +0100177endif
178
Eric Wild1e17c4f2020-03-24 17:19:27 +0100179if DEVICE_IPC
180bin_PROGRAMS += osmo-trx-ipc
181osmo_trx_ipc_SOURCES = osmo-trx.cpp
182osmo_trx_ipc_LDADD = \
183 $(builddir)/device/ipc/libdevice.la \
184 $(COMMON_LDADD)
185osmo_trx_ipc_CPPFLAGS = $(AM_CPPFLAGS)
Eric Wild1e17c4f2020-03-24 17:19:27 +0100186
Erica0e1ed32022-11-28 19:21:08 +0100187# bin_PROGRAMS += osmo-trx-ipc2
188# osmo_trx_ipc2_SOURCES = osmo-trx.cpp
189# osmo_trx_ipc2_LDADD = \
190# $(builddir)/device/ipc2/libdevice.la \
191# $(COMMON_LDADD)
192# osmo_trx_ipc2_CPPFLAGS = $(AM_CPPFLAGS)
193# if ENABLE_MS_TRX
194# bin_PROGRAMS += osmo-trx-ms-ipc
195# osmo_trx_ms_ipc_SOURCES = $(MS_SOURCES) ms/ms_upper.cpp
196# osmo_trx_ms_ipc_LDADD = \
197# $(COMMON_LDADD) \
198# $(TRXCON_LDADD)
199# osmo_trx_ms_ipc_CPPFLAGS = $(AM_CPPFLAGS) -DBUILDIPC -I./device/ipc2 -I../device/ipc2
200
201# bin_PROGRAMS += osmo-trx-syncthing-ipc
202# osmo_trx_syncthing_ipc_SOURCES = $(MS_SOURCES) ms/ms_rx_burst_test.cpp
203# osmo_trx_syncthing_ipc_LDADD = $(COMMON_LDADD)
204# osmo_trx_syncthing_ipc_CPPFLAGS = $(AM_CPPFLAGS) -DSYNCTHINGONLY -DBUILDIPC -I./device/ipc2 -I../device/ipc2
205# endif
206endif