blob: 21c37a6e38f99ba94e71277ca4556e8e6fb945ab [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 \
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +040053 gprs_rlcmac.cpp \
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 \
Jacob Erlbeck53670862015-05-12 17:54:33 +020057 gprs_ms_storage.cpp \
Pau Espin Pedrolac3fd122021-01-13 18:54:38 +010058 gprs_pcu.c \
Andreas Eversbergebde64f2012-07-12 09:18:42 +020059 pcu_l1_if.cpp \
Holger Hans Peter Freyther17c31ce2013-08-24 18:31:27 +020060 pcu_vty.c \
Jacob Erlbeck62e96a32015-06-04 09:42:14 +020061 pcu_vty_functions.cpp \
Max842d7812017-11-01 18:11:24 +010062 mslot_class.c \
Pau Espin Pedrolc0a250d2021-01-21 18:46:13 +010063 nacc_fsm.c \
64 neigh_cache.c \
Holger Hans Peter Freytherb6acfda2013-10-17 19:41:11 +020065 tbf.cpp \
Pau Espin Pedroldc2aaac2021-05-14 12:50:46 +020066 tbf_fsm.c \
Daniel Willmannca102af2014-08-08 12:14:12 +020067 tbf_ul.cpp \
Pau Espin Pedrol343c0ee2022-11-17 19:55:08 +010068 tbf_ul_fsm.c \
Pau Espin Pedrolea8dbdd2021-07-29 18:39:16 +020069 tbf_ul_ack_fsm.c \
Pau Espin Pedrol6ad11a62021-07-27 12:27:08 +020070 tbf_ul_ass_fsm.c \
Daniel Willmannca102af2014-08-08 12:14:12 +020071 tbf_dl.cpp \
Pau Espin Pedrol343c0ee2022-11-17 19:55:08 +010072 tbf_dl_fsm.c \
Pau Espin Pedrol49a2f402021-07-27 17:33:07 +020073 tbf_dl_ass_fsm.c \
Holger Hans Peter Freytherb78adcd2013-10-17 20:12:37 +020074 bts.cpp \
Oliver Smithd3c75912021-07-09 16:37:16 +020075 bts_pch_timer.c \
Max6dc90b82018-02-19 17:17:28 +010076 pdch.cpp \
Pau Espin Pedrol15c58ac2021-03-08 14:57:58 +010077 pdch_ul_controller.c \
Holger Hans Peter Freytherd6ef5342013-10-19 19:50:00 +020078 encoding.cpp \
Pau Espin Pedrol15c58ac2021-03-08 14:57:58 +010079 sba.c \
Holger Hans Peter Freyther096f6f92013-11-07 07:21:06 +010080 decoding.cpp \
Pau Espin Pedrol4f8384b2022-03-31 19:36:12 +020081 llc.c \
Jacob Erlbeck4f666bc2015-07-20 12:40:42 +020082 rlc.cpp \
Pau Espin Pedrole91c4c72021-01-18 17:54:30 +010083 osmobts_sock.c \
Jacob Erlbeck409f9802015-11-30 18:06:50 +010084 gprs_codel.c \
Max51754b62019-03-13 17:14:13 +010085 coding_scheme.c \
Oliver Smithcfb63212019-09-05 17:13:33 +020086 egprs_rlc_compression.cpp \
87 gprs_rlcmac_sched.cpp
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030088
Harald Welteda628592012-07-22 22:59:08 +020089bin_PROGRAMS = \
Harald Welte3022a702012-07-22 22:58:22 +020090 osmo-pcu
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030091
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020092noinst_PROGRAMS =
93
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030094noinst_HEADERS = \
Pau Espin Pedrolff7c5812022-12-14 18:49:06 +010095 alloc_algo.h \
Ivan Kluchnikov60437182012-05-24 22:07:15 +040096 gprs_debug.h \
Ivan Kluchnikov487a1412011-12-21 13:17:53 +030097 csn1.h \
Ivan Kluchnikov5c2f9fb2012-02-05 02:27:17 +040098 gsm_rlcmac.h \
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +040099 gprs_bssgp_pcu.h \
Pau Espin Pedrol3a271022021-01-21 18:44:23 +0100100 gprs_bssgp_rim.h \
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +0400101 gprs_rlcmac.h \
Jacob Erlbecke04e0b02015-05-06 18:30:48 +0200102 gprs_ms.h \
Jacob Erlbeck53670862015-05-12 17:54:33 +0200103 gprs_ms_storage.h \
Pau Espin Pedrolac3fd122021-01-13 18:54:38 +0100104 gprs_pcu.h \
Ivan Kluchnikovff447cd2012-04-12 15:16:23 +0400105 pcu_l1_if.h \
Philipp Maiereaf5da32023-02-13 13:37:22 +0100106 pcu_l1_if_phy.h \
Andreas Eversberga23c7ee2012-12-18 10:47:28 +0100107 pcu_vty.h \
Jacob Erlbeck62e96a32015-06-04 09:42:14 +0200108 pcu_vty_functions.h \
Max842d7812017-11-01 18:11:24 +0100109 mslot_class.h \
Pau Espin Pedrolc0a250d2021-01-21 18:46:13 +0100110 nacc_fsm.h \
111 neigh_cache.h \
Holger Hans Peter Freyther67ed34e2013-10-17 17:01:54 +0200112 tbf.h \
Pau Espin Pedroldc2aaac2021-05-14 12:50:46 +0200113 tbf_fsm.h \
Pau Espin Pedrol9d1cdb12019-09-25 17:47:02 +0200114 tbf_ul.h \
Pau Espin Pedrolea8dbdd2021-07-29 18:39:16 +0200115 tbf_ul_ack_fsm.h \
Pau Espin Pedrol6ad11a62021-07-27 12:27:08 +0200116 tbf_ul_ass_fsm.h \
Pau Espin Pedrol9d1cdb12019-09-25 17:47:02 +0200117 tbf_dl.h \
Pau Espin Pedrol49a2f402021-07-27 17:33:07 +0200118 tbf_dl_ass_fsm.h \
Holger Hans Peter Freytherb78adcd2013-10-17 20:12:37 +0200119 bts.h \
Oliver Smithd3c75912021-07-09 16:37:16 +0200120 bts_pch_timer.h \
Max6dc90b82018-02-19 17:17:28 +0100121 pdch.h \
Pau Espin Pedrol15c58ac2021-03-08 14:57:58 +0100122 pdch_ul_controller.h \
Holger Hans Peter Freyther111614a2013-10-19 20:04:57 +0200123 encoding.h \
Holger Hans Peter Freytherd11290b2013-10-26 17:32:04 +0200124 sba.h \
125 rlc.h \
Holger Hans Peter Freytherbe570812013-11-07 08:01:49 +0100126 decoding.h \
Jacob Erlbeck0a0b5dc2015-03-29 13:53:01 +0200127 llc.h \
Jacob Erlbeckdfef28d2015-05-11 14:13:47 +0200128 pcu_utils.h \
Jacob Erlbeck4f666bc2015-07-20 12:40:42 +0200129 cxx_linuxlist.h \
Jacob Erlbeck409f9802015-11-30 18:06:50 +0100130 gprs_codel.h \
Maxbea2edb2019-03-06 17:04:59 +0100131 coding_scheme.h \
Pau Espin Pedrolb2653fe2020-03-26 15:14:01 +0100132 egprs_rlc_compression.h \
133 wireshark_compat.h
Ivan Kluchnikov487a1412011-12-21 13:17:53 +0300134
Harald Welte3022a702012-07-22 22:58:22 +0200135osmo_pcu_SOURCES = pcu_main.cpp
Andreas Eversberga23c7ee2012-12-18 10:47:28 +0100136
137if ENABLE_SYSMODSP
Max186206c2018-01-15 16:43:22 +0100138AM_CPPFLAGS += -I$(srcdir)/osmo-bts-sysmo -I$(SYSMOBTS_INCDIR)
Andreas Eversberga23c7ee2012-12-18 10:47:28 +0100139
Maxde810f22016-05-13 10:27:35 +0200140noinst_HEADERS += \
141 osmo-bts-sysmo/sysmo_l1_if.h \
142 osmo-bts-sysmo/femtobts.h
143
144noinst_PROGRAMS += \
145 osmo-pcu-remote
146
147osmo_pcu_SOURCES += \
148 osmo-bts-sysmo/sysmo_l1_if.c \
149 osmo-bts-sysmo/sysmo_l1_hw.c \
150 osmo-bts-sysmo/femtobts.c
151
152osmo_pcu_remote_SOURCES = \
153 pcu_main.cpp \
154 osmo-bts-sysmo/sysmo_l1_if.c \
155 osmo-bts-sysmo/sysmo_l1_fwd.c \
156 osmo-bts-sysmo/femtobts.c
157
158osmo_pcu_remote_LDADD = \
159 libgprs.la \
160 $(LIBOSMOGB_LIBS) \
161 $(LIBOSMOCORE_LIBS) \
Pau Espin Pedrolc0a250d2021-01-21 18:46:13 +0100162 $(LIBOSMOCTRL_LIBS) \
Maxde810f22016-05-13 10:27:35 +0200163 $(LIBOSMOGSM_LIBS) \
Vadim Yanitskiycc954242023-03-09 18:05:23 +0700164 -lrt \
Vadim Yanitskiy8c882192022-08-08 01:38:36 +0700165 $(NULL)
Andreas Eversberga23c7ee2012-12-18 10:47:28 +0100166endif
167
Yves Godin660709d2016-05-19 11:08:03 +0200168if ENABLE_LC15BTS_PHY
Harald Weltec136be02017-06-11 11:36:33 +0200169AM_CPPFLAGS += $(LITECELL15_CFLAGS) -I$(srcdir)/osmo-bts-litecell15
Yves Godin660709d2016-05-19 11:08:03 +0200170
Yves Godin660709d2016-05-19 11:08:03 +0200171noinst_HEADERS += \
172 osmo-bts-litecell15/lc15_l1_if.h \
173 osmo-bts-litecell15/lc15bts.h
174
175osmo_pcu_SOURCES += \
176 osmo-bts-litecell15/lc15_l1_if.c \
177 osmo-bts-litecell15/lc15_l1_hw.c \
178 osmo-bts-litecell15/lc15bts.c
179endif
180
Jean-Francois Dionnec1e44902017-06-05 14:44:57 -0400181if ENABLE_OC2GBTS_PHY
182AM_CPPFLAGS += -I$(OC2G_INCDIR) -I$(srcdir)/osmo-bts-oc2g
183
Jean-Francois Dionnec1e44902017-06-05 14:44:57 -0400184noinst_HEADERS += \
185 osmo-bts-oc2g/oc2g_l1_if.h \
186 osmo-bts-oc2g/oc2gbts.h
187
188osmo_pcu_SOURCES += \
189 osmo-bts-oc2g/oc2g_l1_if.c \
190 osmo-bts-oc2g/oc2g_l1_hw.c \
191 osmo-bts-oc2g/oc2gbts.c
192endif
193
Philipp Maier4bac3982023-02-03 16:52:42 +0100194if ENABLE_ER_E1_CCU
195AM_CPPFLAGS += -I$(srcdir)/ericsson-rbs
196
197noinst_HEADERS += \
198 ericsson-rbs/er_ccu_if.h \
199 ericsson-rbs/er_ccu_descr.h
200
201osmo_pcu_SOURCES += \
202 ericsson-rbs/er_ccu_l1_if.c \
203 ericsson-rbs/er_ccu_if.c
204endif
205
Harald Welte3022a702012-07-22 22:58:22 +0200206osmo_pcu_LDADD = \
Ivan Kluchnikov5c2f9fb2012-02-05 02:27:17 +0400207 libgprs.la \
Harald Welte477e79e2012-06-18 12:21:03 +0800208 $(LIBOSMOGB_LIBS) \
Harald Welte57f6b022012-06-14 21:05:44 +0800209 $(LIBOSMOCORE_LIBS) \
Pau Espin Pedrolc0a250d2021-01-21 18:46:13 +0100210 $(LIBOSMOCTRL_LIBS) \
Harald Welte57f6b022012-06-14 21:05:44 +0800211 $(LIBOSMOGSM_LIBS) \
Philipp Maier4bac3982023-02-03 16:52:42 +0100212 $(LIBOSMOABIS_LIBS) \
213 $(LIBOSMOTRAU_LIBS) \
Vadim Yanitskiycc954242023-03-09 18:05:23 +0700214 -lrt \
Vadim Yanitskiy8c882192022-08-08 01:38:36 +0700215 $(NULL)
Ivan Kluchnikov5c2f9fb2012-02-05 02:27:17 +0400216
217#MOSTLYCLEANFILES += testSource testDestination