blob: cab64ff061b497810c46fd08dcb73bccddf8ce14 [file] [log] [blame]
Harald Welte27f9c4a2015-08-30 22:47:18 +02001ASN1_ROOT=../asn1/
Harald Welte27f9c4a2015-08-30 22:47:18 +02002ASN1_FILES=HNBAP-CommonDataTypes.asn
Harald Welteb3dae302015-08-30 12:20:09 +02003
Harald Welte27f9c4a2015-08-30 22:47:18 +02004ASN1TOSTRUCT:=$(ASN1_ROOT)/utils/asn1tostruct.py
Harald Welte27f9c4a2015-08-30 22:47:18 +02005
Harald Welte0ec7f132015-09-10 10:52:18 +02006PKG_INCLUDES:=$(shell pkg-config --cflags libosmocore libosmovty libosmogsm libasn1c)
7PKG_LDFLAGS:=$(shell pkg-config --libs libosmocore libosmovty libosmogsm libasn1c)
Harald Welteb3dae302015-08-30 12:20:09 +02008
Harald Welte0ec7f132015-09-10 10:52:18 +02009CFLAGS:=-g -Wall $(PKG_INCLUDES) -Ihnbap/
10LDFLAGS:=$(PKG_LDFLAGS) -lsctp
11
12HNBAP_OBJS=hnbap_encoder.o hnbap_decoder.o
13RANAP_OBJS=#ranap_encoder.o ranap_decoder.o
14RUA_OBJS=#rua_encoder.o rua_decoder.o
15
16LIBS=hnbap/libosmo-asn1-hnbap.a rua/libosmo-asn1-rua.a ranap/libosmo-asn1-ranap.a
Harald Welteb90c37d2015-09-10 10:26:09 +020017
Harald Welteb3dae302015-08-30 12:20:09 +020018all: hnbgw
19
Harald Welte27f9c4a2015-08-30 22:47:18 +020020.PHONY: hnbap_encoder.c
Harald Welte9da96972015-08-31 09:38:13 +020021hnbap_encoder.c: $(ASN1_ROOT)/hnbap/HNBAP-PDU-Contents.asn
22 $(ASN1TOSTRUCT) -f $<
23
24.PHONY: rua_encoder.c
25rua_encoder.c: $(ASN1_ROOT)/rua/RUA-PDU-Contents.asn
26 $(ASN1TOSTRUCT) -f $<
27
28.PHONY: ranap_encoder.c
29ranap_encoder.c: $(ASN1_ROOT)/ranap/RANAP-PDU-Contents.asn
Harald Welte27f9c4a2015-08-30 22:47:18 +020030 $(ASN1TOSTRUCT) -f $<
31
Harald Welteb90c37d2015-09-10 10:26:09 +020032.PHONY: ranap_common.h
33ranap_common.h:
34 for f in ranap/*.h; do echo "#include \"$f\""; done > ranap_common.h
35
36.PHONY: rua_common.h
37rua_common.h:
38 for f in ranap/*.h; do echo "#include \"$f\""; done > rua_common.h
39
Harald Welte0ec7f132015-09-10 10:52:18 +020040hnbap/libosmo-asn1-hnbap.a:
41 $(MAKE) -C hnbap
Harald Welte0bdea4d2015-08-30 23:13:06 +020042
Harald Welteb90c37d2015-09-10 10:26:09 +020043rua/libosmo-asn1-rua.a:
44 $(MAKE) -C rua
45
46ranap/libosmo-asn1-ranap.a:
47 $(MAKE) -C ranap
48
Harald Welte0ec7f132015-09-10 10:52:18 +020049hnbgw: asn1helpers.o hnbap_common.o hnbgw.o hnbgw_hnbap.o $(HNBAP_OBJS) $(RUA_OBJS) $(RANAP_OBJS) $(LIBS)
Harald Welteb3dae302015-08-30 12:20:09 +020050 $(CC) $(LDFLAGS) -o $@ $^
51
52%.o: %.c
53 $(CC) $(CFLAGS) -o $@ -c $^
54
55clean:
Harald Welte0ec7f132015-09-10 10:52:18 +020056 @rm -f hnbgw *.o
57
58mrproper: clean
59 $(MAKE) -C hnbap clean
60 $(MAKE) -C rua clean
61 $(MAKE) -C ranap clean