1 ##############################################################################
3 # Copyright (c) 2019 AT&T Intellectual Property.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 ##############################################################################
18 CFLAGS=-Wall -Wpedantic -std=c11 -Og -I./inc -I./src -I./e2ap_engine -DASN_DISABLE_OER_SUPPORT -DASN_PDU_COLLECTION -D_POSIX_C_SOURCE=200809L -ggdb
21 LIB=$(OBJDIR)/libe2ap_codec.a
22 LIBSRC=configuration_update_wrapper.c x2setup_request_wrapper.c x2reset_request_wrapper.c asn1codec_utils.c
23 LIBOBJ=$(addprefix $(OBJDIR)/,$(LIBSRC:.c=.o))
24 TESTX2SETUPREQUEST=tests/x2setup_request_wrapper_test
25 TESTCONFUPDATE=tests/configuration_update_wrapper_test
26 TESTX2RESETREQUEST=tests/x2reset_request_wrapper_test
27 TESTUNPACKXER=tests/unpack_xer
29 .PHONY: all clean e2ap_engine
31 all: $(LIB) $(TESTX2SETUPREQUEST) $(TESTCONFUPDATE) $(TESTX2RESETREQUEST) $(TESTUNPACKXER)
33 e2ap_engine/libasncodec.a:
34 cd e2ap_engine/ && make -f converter-example.mk
36 $(OBJDIR)/%.o: src/%.c e2ap_engine/*.h
38 $(CC) $(CFLAGS) -c $< -o $@
40 $(LIB): e2ap_engine/libasncodec.a $(LIBOBJ)
41 $(AR) -crv $(LIB) $(LIBOBJ)
43 $(TESTX2SETUPREQUEST): % : $(LIB) src/%.c
45 $(CC) $(CFLAGS) src/$@.c -o $@ $(LIB) e2ap_engine/libasncodec.a
47 $(TESTCONFUPDATE): % : $(LIB) src/%.c
49 $(CC) $(CFLAGS) src/$@.c -o $@ $(LIB) e2ap_engine/libasncodec.a
51 $(TESTX2RESETREQUEST): % : $(LIB) src/%.c
53 $(CC) $(CFLAGS) src/$@.c -o $@ $(LIB) e2ap_engine/libasncodec.a
55 $(TESTUNPACKXER): % : $(LIB) src/%.c
57 $(CC) $(CFLAGS) src/$@.c -o $@ $(LIB) e2ap_engine/libasncodec.a
60 rm -rf $(OBJDIR) tests
62 cd e2ap_engine/ && make -f converter-example.mk clean
63 rm -rf $(OBJDIR) tests