blob: 87d181a8d95e8fa9542d800b5c1ec893cc278519 [file] [log] [blame]
Daniel Willmann29b9e002015-12-15 15:10:31 +01001SUBDIRS = hnbap rua ranap tests
2
Harald Weltea95d5a52016-01-03 16:22:16 +01003# Build {hnbap,rua,ranap}_{encoder,decoder}.c using asn1tostruct
Daniel Willmann29b9e002015-12-15 15:10:31 +01004ASN1_ROOT = $(top_builddir)/asn1/
5ASN1TOSTRUCT = $(ASN1_ROOT)/utils/asn1tostruct.py
Neels Hofmeyrc51f7352015-12-22 12:21:16 +01006BUILT_SOURCES = hnbap_decoder.c hnbap_encoder.c rua_decoder.c rua_encoder.c ranap_decoder.c ranap_encoder.c
7
Neels Hofmeyr0de6b942016-01-05 12:59:13 +01008hnbap_encoder.c hnbap_decoder.c hnbap_ies_defs.h: $(ASN1_ROOT)/hnbap/HNBAP-PDU-Contents.asn $(ASN1TOSTRUCT)
Daniel Willmann29b9e002015-12-15 15:10:31 +01009 $(ASN1TOSTRUCT) -f $<
10
Neels Hofmeyr0de6b942016-01-05 12:59:13 +010011rua_encoder.c rua_decoder.c rua_ies_defs.h: $(ASN1_ROOT)/rua/RUA-PDU-Contents.asn $(ASN1TOSTRUCT)
Daniel Willmann29b9e002015-12-15 15:10:31 +010012 $(ASN1TOSTRUCT) -p RUA_ -f $<
13
Neels Hofmeyr96979af2016-01-05 15:19:44 +010014ranap_encoder.c ranap_decoder.c: $(ASN1_ROOT)/ranap/RANAP-PDU-Contents.asn $(ASN1TOSTRUCT)
Daniel Willmann29b9e002015-12-15 15:10:31 +010015 $(ASN1TOSTRUCT) -p RANAP_ -f $<
Neels Hofmeyr96979af2016-01-05 15:19:44 +010016# We also need to replace the include in the newly generated .c files:
17 sed -i 's,^#include "ranap_ies_defs.h",#include <osmocom/ranap/ranap_ies_defs.h>,' ranap_encoder.c ranap_decoder.c
Daniel Willmann8fda3622016-01-06 14:18:51 +010018 sed -i 's,^#include "ranap_common.h",#include <osmocom/ranap/ranap_common.h>,' ranap_encoder.c ranap_decoder.c ranap_ies_defs.h
19 mv ranap_ies_defs.h $(top_srcdir)/include/osmocom/ranap/
20# this is ugly ^. ranap_ies_defs.h is generated from asn1tostruct.py here, but
21# it should live in include/osmocom/ranap/.
Harald Weltea95d5a52016-01-03 16:22:16 +010022
Neels Hofmeyrf6780362016-02-29 14:28:00 +010023AM_CFLAGS = -I$(top_srcdir)/include $(OSMOCORE_CFLAGS) $(OSMOVTY_CFLAGS) $(OSMOGSM_CFLAGS) $(OSMONETIF_CFLAGS) $(ASN1C_CFLAGS) $(OSMOSIGTRAN_CFLAGS)
Harald Weltea95d5a52016-01-03 16:22:16 +010024COMMON_LDADD = -lsctp
25
26# build the shared RANAP library
27#
28RANAP_LIBVERSION=0:0:0
29lib_LTLIBRARIES = libosmo-ranap.la
30libosmo_ranap_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(RANAP_LIBVERSION)
31libosmo_ranap_la_LIBADD = $(OSMOCORE_LIBS) $(OSMOGSM_LIBS) $(ASN1C_LIBS) $(COMMON_LDADD) ranap/libosmo-asn1-ranap.la
Harald Welte5c6bd512016-01-05 15:05:03 +010032libosmo_ranap_la_SOURCES = ranap_common.c ranap_encoder.c ranap_decoder.c ranap_msg_factory.c iu_helpers.c \
33 ranap_common_cn.c
Harald Weltea95d5a52016-01-03 16:22:16 +010034
Harald Weltea95d5a52016-01-03 16:22:16 +010035# build the actual HomeNodeB gateway
36#
37bin_PROGRAMS = osmo-hnbgw
38
39noinst_HEADERS = hnbap_common.h hnbap_ies_defs.h \
40 rua_common.h rua_ies_defs.h \
41 context_map.h hnbgw.h hnbgw_cn.h \
Neels Hofmeyr3da86082016-03-30 12:36:15 +020042 hnbgw_hnbap.h hnbgw_rua.h hnbgw_ranap.h
Harald Weltea95d5a52016-01-03 16:22:16 +010043
44osmo_hnbgw_SOURCES = hnbap_encoder.c hnbap_decoder.c hnbap_common.c \
45 rua_encoder.c rua_decoder.c rua_common.c \
Neels Hofmeyr3da86082016-03-30 12:36:15 +020046 rua_msg_factory.c \
Harald Weltea95d5a52016-01-03 16:22:16 +010047 hnbgw.c hnbgw_hnbap.c hnbgw_rua.c hnbgw_ranap.c \
48 context_map.c hnbgw_cn.c
49
50osmo_hnbgw_LDADD = $(OSMOCORE_LIBS) $(OSMOVTY_LIBS) $(OSMOGSM_LIBS) \
51 $(ASN1C_LIBS) $(OSMOSIGTRAN_LIBS) $(COMMON_LDADD) \
Daniel Willmann6480cad2016-01-06 18:06:26 +010052 $(OSMONETIF_LIBS) \
Harald Weltea95d5a52016-01-03 16:22:16 +010053 hnbap/libosmo-asn1-hnbap.a rua/libosmo-asn1-rua.a \
54 libosmo-ranap.la
Neels Hofmeyr5aabad12016-01-04 15:23:09 +010055
56
57regen: regenerate-from-asn1-source
58
59regenerate-from-asn1-source:
60 make -C hnbap regen
61 make -C ranap regen
62 make -C rua regen