blob: ded6632c60a0bc3de58ff0b450b6e53a2f1fc376 [file] [log] [blame]
Ivan Kluchnikov487a1412011-12-21 13:17:53 +03001#
2# Copyright 2008, 2009 Free Software Foundation, Inc.
3#
4# This software is distributed under the terms of the GNU Public License.
5# See the COPYING file in the main directory for details.
6#
7# This program is free software: you can redistribute it and/or modify
8# it under the terms of the GNU General Public License as published by
9# the Free Software Foundation, either version 3 of the License, or
10# (at your option) any later version.
11#
12# This program is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15# GNU General Public License for more details.
16#
17# You should have received a copy of the GNU General Public License
18# along with this program. If not, see <http://www.gnu.org/licenses/>.
19#
20
Yves Godinf0bb2542016-05-13 10:50:47 +020021AUTOMAKE_OPTIONS = subdir-objects
Philipp Maier4bac3982023-02-03 16:52:42 +010022AM_CPPFLAGS = -I$(top_srcdir)/include $(STD_DEFINES_AND_INCLUDES) $(LIBOSMOCORE_CFLAGS) $(LIBOSMOGB_CFLAGS) $(LIBOSMOCTRL_CFLAGS) $(LIBOSMOGSM_CFLAGS) $(LIBOSMOABIS_CFLAGS) $(LIBOSMOTRAU_CFLAGS)
Andreas Eversberga23c7ee2012-12-18 10:47:28 +010023
24if ENABLE_SYSMODSP
Maxcad867e2016-04-21 14:35:55 +020025AM_CPPFLAGS += -DENABLE_DIRECT_PHY
Andreas Eversberga23c7ee2012-12-18 10:47:28 +010026endif
27
Yves Godin660709d2016-05-19 11:08:03 +020028if ENABLE_LC15BTS_PHY
29AM_CPPFLAGS += -DENABLE_DIRECT_PHY
30endif
31
Jean-Francois Dionnec1e44902017-06-05 14:44:57 -040032if ENABLE_OC2GBTS_PHY
33AM_CPPFLAGS += -DENABLE_DIRECT_PHY
34endif
35
Philipp Maier4bac3982023-02-03 16:52:42 +010036if ENABLE_ER_E1_CCU
37AM_CPPFLAGS += -DENABLE_DIRECT_PHY
38endif
39
Vadim Yanitskiy3cf9d532022-11-09 03:15:59 +070040AM_CXXFLAGS = -Wall
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030041
42noinst_LTLIBRARIES = libgprs.la
43
44libgprs_la_SOURCES = \
Pau Espin Pedrolff7c5812022-12-14 18:49:06 +010045 alloc_algo.cpp \
Pau Espin Pedrol4f29fe72022-11-21 13:06:36 +010046 gprs_debug.c \
Vadim Yanitskiy39a65052020-01-25 01:24:59 +070047 csn1.c \
Pau Espin Pedrolc90e6f82021-10-19 14:45:17 +020048 csn1_dec.c \
49 csn1_enc.c \
Pau Espin Pedrolb2653fe2020-03-26 15:14:01 +010050 gsm_rlcmac.c \
Pau Espin Pedrol8a35e642021-01-18 17:14:14 +010051 gprs_bssgp_pcu.c \
Pau Espin Pedrol3a271022021-01-21 18:44:23 +010052 gprs_bssgp_rim.c \
Maxcb947e02023-04-12 08:27:54 +030053 gprs_rlcmac.c \
Andreas Eversberg5dac2f02012-06-27 15:52:04 +020054 gprs_rlcmac_sched.cpp \
Andreas Eversberg050ace22013-03-16 16:22:02 +010055 gprs_rlcmac_meas.cpp \
Pau Espin Pedrolda971ee2020-12-16 15:59:45 +010056 gprs_ms.c \
Pau Espin Pedrolac3fd122021-01-13 18:54:38 +010057 gprs_pcu.c \
Andreas Eversbergebde64f2012-07-12 09:18:42 +020058 pcu_l1_if.cpp \
Holger Hans Peter Freyther17c31ce2013-08-24 18:31:27 +020059 pcu_vty.c \
Jacob Erlbeck62e96a32015-06-04 09:42:14 +020060 pcu_vty_functions.cpp \
Max842d7812017-11-01 18:11:24 +010061 mslot_class.c \
Pau Espin Pedrolc0a250d2021-01-21 18:46:13 +010062 nacc_fsm.c \
63 neigh_cache.c \
Holger Hans Peter Freytherb6acfda2013-10-17 19:41:11 +020064 tbf.cpp \
Pau Espin Pedroldc2aaac2021-05-14 12:50:46 +020065 tbf_fsm.c \
Daniel Willmannca102af2014-08-08 12:14:12 +020066 tbf_ul.cpp \
Pau Espin Pedrol343c0ee2022-11-17 19:55:08 +010067 tbf_ul_fsm.c \
Pau Espin Pedrolea8dbdd2021-07-29 18:39:16 +020068 tbf_ul_ack_fsm.c \
Pau Espin Pedrol6ad11a62021-07-27 12:27:08 +020069 tbf_ul_ass_fsm.c \
Daniel Willmannca102af2014-08-08 12:14:12 +020070 tbf_dl.cpp \
Pau Espin Pedrol343c0ee2022-11-17 19:55:08 +010071 tbf_dl_fsm.c \
Pau Espin Pedrol49a2f402021-07-27 17:33:07 +020072 tbf_dl_ass_fsm.c \
Holger Hans Peter Freytherb78adcd2013-10-17 20:12:37 +020073 bts.cpp \
Oliver Smithd3c75912021-07-09 16:37:16 +020074 bts_pch_timer.c \
Max6dc90b82018-02-19 17:17:28 +010075 pdch.cpp \
Pau Espin Pedrol15c58ac2021-03-08 14:57:58 +010076 pdch_ul_controller.c \
Holger Hans Peter Freytherd6ef5342013-10-19 19:50:00 +020077 encoding.cpp \
Pau Espin Pedrol15c58ac2021-03-08 14:57:58 +010078 sba.c \
Holger Hans Peter Freyther096f6f92013-11-07 07:21:06 +010079 decoding.cpp \
Pau Espin Pedrol4f8384b2022-03-31 19:36:12 +020080 llc.c \
Jacob Erlbeck4f666bc2015-07-20 12:40:42 +020081 rlc.cpp \
Pau Espin Pedrolff335972023-07-26 16:14:52 +020082 rlc_window.cpp \
83 rlc_window_dl.cpp \
84 rlc_window_ul.cpp \
Pau Espin Pedrole91c4c72021-01-18 17:54:30 +010085 osmobts_sock.c \
Jacob Erlbeck409f9802015-11-30 18:06:50 +010086 gprs_codel.c \
Max51754b62019-03-13 17:14:13 +010087 coding_scheme.c \
Oliver Smithcfb63212019-09-05 17:13:33 +020088 egprs_rlc_compression.cpp \
89 gprs_rlcmac_sched.cpp
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030090
Harald Welteda628592012-07-22 22:59:08 +020091bin_PROGRAMS = \
Harald Welte3022a702012-07-22 22:58:22 +020092 osmo-pcu
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030093
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020094noinst_PROGRAMS =
95
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030096noinst_HEADERS = \
Pau Espin Pedrolff7c5812022-12-14 18:49:06 +010097 alloc_algo.h \
Ivan Kluchnikov60437182012-05-24 22:07:15 +040098 gprs_debug.h \
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030099 csn1.h \
Ivan Kluchnikov5c2f9fb2012-02-05 02:27:17 +0400100 gsm_rlcmac.h \
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +0400101 gprs_bssgp_pcu.h \
Pau Espin Pedrol3a271022021-01-21 18:44:23 +0100102 gprs_bssgp_rim.h \
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +0400103 gprs_rlcmac.h \
Jacob Erlbecke04e0b02015-05-06 18:30:48 +0200104 gprs_ms.h \
Pau Espin Pedrolac3fd122021-01-13 18:54:38 +0100105 gprs_pcu.h \
Ivan Kluchnikovff447cd2012-04-12 15:16:23 +0400106 pcu_l1_if.h \
Philipp Maiereaf5da32023-02-13 13:37:22 +0100107 pcu_l1_if_phy.h \
Andreas Eversberga23c7ee2012-12-18 10:47:28 +0100108 pcu_vty.h \
Jacob Erlbeck62e96a32015-06-04 09:42:14 +0200109 pcu_vty_functions.h \
Max842d7812017-11-01 18:11:24 +0100110 mslot_class.h \
Pau Espin Pedrolc0a250d2021-01-21 18:46:13 +0100111 nacc_fsm.h \
112 neigh_cache.h \
Holger Hans Peter Freyther67ed34e2013-10-17 17:01:54 +0200113 tbf.h \
Pau Espin Pedroldc2aaac2021-05-14 12:50:46 +0200114 tbf_fsm.h \
Pau Espin Pedrol9d1cdb12019-09-25 17:47:02 +0200115 tbf_ul.h \
Pau Espin Pedrolea8dbdd2021-07-29 18:39:16 +0200116 tbf_ul_ack_fsm.h \
Pau Espin Pedrol6ad11a62021-07-27 12:27:08 +0200117 tbf_ul_ass_fsm.h \
Pau Espin Pedrol9d1cdb12019-09-25 17:47:02 +0200118 tbf_dl.h \
Pau Espin Pedrol49a2f402021-07-27 17:33:07 +0200119 tbf_dl_ass_fsm.h \
Holger Hans Peter Freytherb78adcd2013-10-17 20:12:37 +0200120 bts.h \
Oliver Smithd3c75912021-07-09 16:37:16 +0200121 bts_pch_timer.h \
Max6dc90b82018-02-19 17:17:28 +0100122 pdch.h \
Pau Espin Pedrol15c58ac2021-03-08 14:57:58 +0100123 pdch_ul_controller.h \
Holger Hans Peter Freyther111614a2013-10-19 20:04:57 +0200124 encoding.h \
Holger Hans Peter Freytherd11290b2013-10-26 17:32:04 +0200125 sba.h \
126 rlc.h \
Pau Espin Pedrolff335972023-07-26 16:14:52 +0200127 rlc_window.h \
128 rlc_window_dl.h \
129 rlc_window_ul.h \
Holger Hans Peter Freytherbe570812013-11-07 08:01:49 +0100130 decoding.h \
Jacob Erlbeck0a0b5dc2015-03-29 13:53:01 +0200131 llc.h \
Jacob Erlbeckdfef28d2015-05-11 14:13:47 +0200132 pcu_utils.h \
Jacob Erlbeck4f666bc2015-07-20 12:40:42 +0200133 cxx_linuxlist.h \
Jacob Erlbeck409f9802015-11-30 18:06:50 +0100134 gprs_codel.h \
Maxbea2edb2019-03-06 17:04:59 +0100135 coding_scheme.h \
Pau Espin Pedrolb2653fe2020-03-26 15:14:01 +0100136 egprs_rlc_compression.h \
137 wireshark_compat.h
Ivan Kluchnikov487a1412011-12-21 13:17:53 +0300138
Harald Welte3022a702012-07-22 22:58:22 +0200139osmo_pcu_SOURCES = pcu_main.cpp
Andreas Eversberga23c7ee2012-12-18 10:47:28 +0100140
141if ENABLE_SYSMODSP
Max186206c2018-01-15 16:43:22 +0100142AM_CPPFLAGS += -I$(srcdir)/osmo-bts-sysmo -I$(SYSMOBTS_INCDIR)
Andreas Eversberga23c7ee2012-12-18 10:47:28 +0100143
Maxde810f22016-05-13 10:27:35 +0200144noinst_HEADERS += \
145 osmo-bts-sysmo/sysmo_l1_if.h \
146 osmo-bts-sysmo/femtobts.h
147
148noinst_PROGRAMS += \
149 osmo-pcu-remote
150
151osmo_pcu_SOURCES += \
152 osmo-bts-sysmo/sysmo_l1_if.c \
153 osmo-bts-sysmo/sysmo_l1_hw.c \
154 osmo-bts-sysmo/femtobts.c
155
156osmo_pcu_remote_SOURCES = \
157 pcu_main.cpp \
158 osmo-bts-sysmo/sysmo_l1_if.c \
159 osmo-bts-sysmo/sysmo_l1_fwd.c \
160 osmo-bts-sysmo/femtobts.c
161
162osmo_pcu_remote_LDADD = \
163 libgprs.la \
164 $(LIBOSMOGB_LIBS) \
165 $(LIBOSMOCORE_LIBS) \
Pau Espin Pedrolc0a250d2021-01-21 18:46:13 +0100166 $(LIBOSMOCTRL_LIBS) \
Maxde810f22016-05-13 10:27:35 +0200167 $(LIBOSMOGSM_LIBS) \
Vadim Yanitskiycc954242023-03-09 18:05:23 +0700168 -lrt \
Vadim Yanitskiy8c882192022-08-08 01:38:36 +0700169 $(NULL)
Andreas Eversberga23c7ee2012-12-18 10:47:28 +0100170endif
171
Yves Godin660709d2016-05-19 11:08:03 +0200172if ENABLE_LC15BTS_PHY
Harald Weltec136be02017-06-11 11:36:33 +0200173AM_CPPFLAGS += $(LITECELL15_CFLAGS) -I$(srcdir)/osmo-bts-litecell15
Yves Godin660709d2016-05-19 11:08:03 +0200174
Yves Godin660709d2016-05-19 11:08:03 +0200175noinst_HEADERS += \
176 osmo-bts-litecell15/lc15_l1_if.h \
177 osmo-bts-litecell15/lc15bts.h
178
179osmo_pcu_SOURCES += \
180 osmo-bts-litecell15/lc15_l1_if.c \
181 osmo-bts-litecell15/lc15_l1_hw.c \
182 osmo-bts-litecell15/lc15bts.c
183endif
184
Jean-Francois Dionnec1e44902017-06-05 14:44:57 -0400185if ENABLE_OC2GBTS_PHY
186AM_CPPFLAGS += -I$(OC2G_INCDIR) -I$(srcdir)/osmo-bts-oc2g
187
Jean-Francois Dionnec1e44902017-06-05 14:44:57 -0400188noinst_HEADERS += \
189 osmo-bts-oc2g/oc2g_l1_if.h \
190 osmo-bts-oc2g/oc2gbts.h
191
192osmo_pcu_SOURCES += \
193 osmo-bts-oc2g/oc2g_l1_if.c \
194 osmo-bts-oc2g/oc2g_l1_hw.c \
195 osmo-bts-oc2g/oc2gbts.c
196endif
197
Philipp Maier4bac3982023-02-03 16:52:42 +0100198if ENABLE_ER_E1_CCU
199AM_CPPFLAGS += -I$(srcdir)/ericsson-rbs
200
201noinst_HEADERS += \
202 ericsson-rbs/er_ccu_if.h \
203 ericsson-rbs/er_ccu_descr.h
204
205osmo_pcu_SOURCES += \
206 ericsson-rbs/er_ccu_l1_if.c \
207 ericsson-rbs/er_ccu_if.c
208endif
209
Harald Welte3022a702012-07-22 22:58:22 +0200210osmo_pcu_LDADD = \
Ivan Kluchnikov5c2f9fb2012-02-05 02:27:17 +0400211 libgprs.la \
Harald Welte477e79e2012-06-18 12:21:03 +0800212 $(LIBOSMOGB_LIBS) \
Harald Welte57f6b022012-06-14 21:05:44 +0800213 $(LIBOSMOCORE_LIBS) \
Pau Espin Pedrolc0a250d2021-01-21 18:46:13 +0100214 $(LIBOSMOCTRL_LIBS) \
Harald Welte57f6b022012-06-14 21:05:44 +0800215 $(LIBOSMOGSM_LIBS) \
Philipp Maier4bac3982023-02-03 16:52:42 +0100216 $(LIBOSMOABIS_LIBS) \
217 $(LIBOSMOTRAU_LIBS) \
Vadim Yanitskiycc954242023-03-09 18:05:23 +0700218 -lrt \
Vadim Yanitskiy8c882192022-08-08 01:38:36 +0700219 $(NULL)
Ivan Kluchnikov5c2f9fb2012-02-05 02:27:17 +0400220
221#MOSTLYCLEANFILES += testSource testDestination